当前位置:嗨网首页>书籍在线阅读

35-讨论

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

11.8.3 讨论

除了向插件传递值之外,还可以使用元数据插件(http://jquery-cookbook.com/go/plugin-metadata)在标记中将显示文本指定为元数据,这种方法在使用多个水印或者在服务器端生成水印时更加实用:

<form id="loginform">
   <input type="text" id="email" name="email"
class="{watermark:'E-Mail Address'}" />
   <input type="password" id="password" name="password"
class="{watermark:'Your password'}" />
</form>
$("#loginform input").watermark();

元数据有一个缺点,它不能在渐进增强的基础上使用。为了改善这种情况,应该像常规表单一样使用标签元素,由插件将标签放在正确的位置上:

<form id="loginform">
   <div>
     <label for="email">E-Mail Address</label>
     <input type="text" id="email" name="email" />
   </div>
   <div>
     <label for="password">Your password</label>
     <input type="password" id="password" name="password" />
   </div>
</form>

在这个例子中,水印插件应用到标签而不是输入字段上:

$("#loginform label").watermark();

然后,该插件使用各个标签的 for 属性寻找相关的输入字段,将标签放在输入字段上。