2013-04-26 198 views
0

试图制作一个jsfiddle,以便我可以在此处发布它并获得一些问题的帮助;然而,我有一个问题让jsfiddle按预期行事,所以我有一个问题,试图记录我的问题!事件处理程序在jsfiddle中无法正常工作

http://jsfiddle.net/eidsonator/he4Vc/#base

我试图模糊事件处理程序添加到与“部分”的ID的输入。我的警报在页面加载后立即触发(不应该),并且在焦点丢失时不会触发。这个问题仍然存在于Chrome和Firefox中(我编码的内部Web应用程序,这样我就可以忽略,即!)

$("#part").on('blur', alert('lost focus')); 

我已经改变了load方法,并且试图包裹它在我自己的$(document).ready(function() {});以及使用.blur()和不同版本的javacript ...任何线索?

谢谢!

+0

在下面的答案的顶部,你在'head'的JS加载。将小提琴中的该选项(左栏)更改为'onLoad' – 2013-04-26 15:57:38

+0

谢谢,杰夫,然而,我的小提琴将有一些功能,我需要有不同的范围。 – eidsonator 2013-04-26 16:17:23

回答

3

你已经写了一个错误的语法。看到docs更多的信息,并更改您的代码

$("#part").on('blur', function(){ 
    //do something 

    }); 
+0

谢谢!我以前使用过.on()函数,正确的用法一定会让我的思绪滑落!它必须是星期五! – eidsonator 2013-04-26 16:19:40

+0

@eidsonator乐于帮助您。发生在每个人身上。祝您好运! – 2013-04-26 16:21:40

4

您直接呼叫alert,并将其返回值传递给.on()方法。相反,你需要将引用传递给在接收到事件可调用的函数:

$("#part").on('blur', function() { 
    alert('lost focus') 
}); 

这里是一个updated fiddle