HTML:
<div id="myID" onclick="cc(this.id)">Click Here</div>?
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
var timer;
var firing = false;
var begen = function(id) {
alert('tek');
};
var popupAc = function(id) {
alert('çift');
};
function cc(id) {
if (firing) {
popupAc(id);
clearTimeout(timer);
firing = false;
return;
}
firing = true;
timer = setTimeout(function() {
//begen(id);
clearTimeout(timer);
firing = false;
}, 250);
}
Run Code Online (Sandbox Code Playgroud)
错误:
Uncaught ReferenceError: cc is not defined
Run Code Online (Sandbox Code Playgroud)
您的JSFiddle首选项设置为"onload",因此JavaScript窗格的内容包含在函数中.
这个范围cc(dd不存在,为jsfiddle示例创建一个额外的问题)到该函数并使其停止为全局.
由于您尝试从内部事件属性调用它,因此您处于不同的范围内,无法访问它.
作为快速修复,您可以将首选项更改为"nowrap",但这不会使代码符合最佳实践.
建议避免使用Javascript绑定事件处理程序的内部事件属性.YUI3提供了一个事件模块,jQuery提供了帮助解决此问题的on方法(其他库可用).另请参见:不引人注目的JavaScript.
例如,看到这个js小提琴.
| 归档时间: |
|
| 查看次数: |
5341 次 |
| 最近记录: |