我在 HTML 页面中输入了内容:
<input id="Name" name="Name" tabindex="0" type="text" value="Name:" />
我用 jQuery 编写了 javascript 来绑定(bind)事件“onfocus”和“onblur”的处理程序:
<script type="text/javascript">
var name = $("#Name");
name.focus(function () {if ($(this).val() == "Name:") $(this).val('');});
name.blur(function () {if ($(this).val() == "") $(this).val("Name:");});
</script>
因此,当用户选择输入时,它的值应该变为空。如果用户未在输入中输入文本并更改焦点,则输入的值将返回“名称:”。
它在 Firefox、Internet Explorer 和 Opera 中工作正常,但在 Google Chrome 中不起作用。此外,chrome 调试器中出现错误:“Uncaught TypeError: Object [object Object] has no method 'focus'”。
如何在 Google Chrome 中使用 jQuery 绑定(bind)处理程序? 谢谢!
最佳答案
不知何故,Chrome 不喜欢在这种情况下将您的变量命名为“name”。以下作品
<script type="text/javascript">
var name2 = $("#Name");
name2.focus(function () {if ($(this).val() == "Name:") $(this).val('');});
name2.blur(function () {if ($(this).val() == "") $(this).val("Name:");});
</script>
关于javascript - Google Chrome 中对象没有方法 'focus',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11872964/