我需要一些JS和Jquery支持

时间:2014-06-12 11:45:57

标签: javascript jquery this attr next

$(function(){
   function First(){
        $(this).next().attr("src", "point.png");
   }
});

这段代码不起作用,你能帮帮我吗?

这是html:

         Username: <input type="text" name="username" onkeypress="First()">
     <img src="" class="vimg">
     <br>

1 个答案:

答案 0 :(得分:1)

这是因为你的函数First的范围是匿名函数。为了使onkeypress="First()"起作用,它必须是一个全局函数。

我通常更喜欢按照您的方式调整我的函数范围(以防止污染全局命名空间),因此大多数人在这种情况下所做的是通过JavaScript(来自匿名方法)设置onkeypress事件。它看起来像这样:

$(function(){
   function First(){
        $(this).next().attr("src", "point.png");
   };

   $("input[name='username']").on('keypress', First);
});