专注于不投入

时间:2014-04-12 02:50:21

标签: javascript jquery html

我的重点不起作用

JSFiddle上的代码:

http://jsfiddle.net/JLULx/

HTML

<body>
    Email1<input type="email"><br/>

    <script src="jquery-1.7.1.min.js" type="text/javascript"></script>
    <script src="selectors.js" type="text/javascript"></script>
</body>

脚本......

$(document).ready(function () {

    var email_default = "Enter your Email address";
    $('input [type="email"]').focus();
});

类似的帖子:

  1. $.focus() not working
  2. 它说$(document).ready函数应该完全加载,焦点应该从 console ..转移到它。我无法理解......

    2. jQuery focus function not working in Firefox

    这似乎并不相关..

    请建议

4 个答案:

答案 0 :(得分:2)

为什么不在电子邮件字段中使用ID。

示例:

<input id="input-email" type="email"/>


$("#input-email").focus()

更简单的方法是使用HTML5自动对焦功能:

<input type="email" autofocus="true">

答案 1 :(得分:0)

要检查jQuery是否返回了一个对象,请执行以下操作:

if($('.my-selector').length)) {
  // jQuery returned an object
}

您的选择器中有一个额外的空间。 jQuery认为您尝试访问input元素的子元素。您需要将代码更改为:

$('input[type="email"]').focus();

还要确保在加载自定义JavaScript之前加载jQuery库。

http://jsfiddle.net/JLULx/2/

答案 2 :(得分:0)

嗯,我认为问题出在JSFiddle上。

例如,如果您在浏览器控制台上运行$(&#34;#run&#34;)。它返回&#34; null&#34;。它假设ID&#34;运行&#34;属于JSFiddle上的运行按钮

答案 3 :(得分:0)

你小提琴上有两件事 - 你没有包含正确的jQuery库,而是尝试使用纯JS。 2.在你的选择器中删除输入&#39;之间的空格。和&#39; [type =&#34; email&#34;]&#39;。 (由RPM回答)