Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jquery中编写onfocus事件_Javascript_Jquery - Fatal编程技术网

Javascript 如何在jquery中编写onfocus事件

Javascript 如何在jquery中编写onfocus事件,javascript,jquery,Javascript,Jquery,我有一个值为'Your Name' 验证失败后,它将变成:“输入您的姓名” 但我希望,当我单击此字段或聚焦此时,“输入您的姓名”会随着空字符串消失。 如何在jquery中编写焦点事件 $field.bind('focus.emptyfield', function() { if ($(this).val() == 'Enter your name') { $(this).val(''); } } 假设$field是对输入字段的jQuery引用 注意:在onclick和onfoc

我有一个值为'Your Name' 验证失败后,它将变成:
“输入您的姓名”

但我希望,当我单击此字段或聚焦此
时,“输入您的姓名”
会随着
空字符串消失。

如何在jquery中编写焦点事件

$field.bind('focus.emptyfield', function() {
  if ($(this).val() == 'Enter your name') {
    $(this).val('');
  }
}
假设$field是对输入字段的jQuery引用

注意:在onclick和onfocus之间,后者是最好处理的事件,因为它与设备无关

注2:始终使用命名空间事件(以便以后可以安全地解除绑定)

假设$field是对输入字段的jQuery引用

注意:在onclick和onfocus之间,后者是最好处理的事件,因为它与设备无关

注2:始终使用名称空间事件(以便以后可以安全地解除绑定)

或者,如果动态加载内容(ajax等)

或者

或者,如果动态加载内容(ajax等)


你所寻找的已经在HTML5中标准化了。您应该使用它,然后使用JavaScript为本机还不支持它的浏览器重新创建此功能

只需像这样编写HTML:

<input type="text" name="username" placeholder="Enter your name">

…该插件将为您处理其余部分。您可以在此处查看演示:

您正在寻找的内容已在HTML5中标准化为。您应该使用它,然后使用JavaScript为本机还不支持它的浏览器重新创建此功能

只需像这样编写HTML:

<input type="text" name="username" placeholder="Enter your name">

…该插件将为您处理其余部分。您可以在此处查看演示:

像这样在JavaScript中使用默认值不是很容易维护的,特别是当它可能只是在HTML中时。很简单,因为他没有指定doctype,你不能假设他在使用html5。恐怕他可以用html4。这个解决方案是通用的,只是他最新问题的答案,浏览器并不真正关心DOCTYPE。您可以使用HTML4 DOCTYPE,但仍然可以使用
@placeholder
。当然,HTML不会验证,但它的工作原理与HTML5 DOCTYPE一样。我不认为他在使用HTML5;我是说他应该这样做。我完全知道它无论如何都会起作用,但如果他不指定doctype,那么我不认为我的答案是一个糟糕的答案。=)如果有一种标准化的处理方式,那么就不需要一直依赖JavaScript。像这样在JavaScript中使用默认值不是很容易维护的,特别是当它可能只是在HTML中时。很简单,因为他没有指定doctype,你不能假设他在使用html5。恐怕他可以用html4。这个解决方案是通用的,只是他最新问题的答案,浏览器并不真正关心DOCTYPE。您可以使用HTML4 DOCTYPE,但仍然可以使用
@placeholder
。当然,HTML不会验证,但它的工作原理与HTML5 DOCTYPE一样。我不认为他在使用HTML5;我是说他应该这样做。我完全知道它无论如何都会起作用,但如果他不指定doctype,那么我不认为我的答案是一个糟糕的答案。=)如果有一种标准化的做事方式,就没有必要一直依赖JavaScript。
<input type="text" name="username" placeholder="Enter your name">
$('input, textarea').placeholder();