您好 我想描述一个我想要完成的场景,我不知道如何
我想将\ live绑定到自定义'myclick':
$('#somediv').bind('myclick', function() {});
显然,我只想在该元素出现问题时触发此事件,
例如如果在该元素上发生了myclick
我知道如何在特定元素(http://api.jquery.com/category/events/event-object/)
上触发自定义事件澄清问题:
我将定义myclick的含义(例如,该元素连续3次点击)
怎么能告诉'somediv'什么时候发生?
我是否以某种方式通过jquery注册到绑定\ live的元素?如果是这样,怎么样?
一个完整的例子是:
<html>
<head>
<script to include jquery>
<script to include MYCODE.js>
<script>
$('#somediv').bind('myclick', function() { alert('myclick'); } );
</script>
<body>
<div id='somediv'></div>
</body>
<head>
</html>
所以我的问题是:MYCODE.js包含什么?
怎么能告诉它定义的一些自定义逻辑,发生在'somediv'上?
感谢您的帮助
答案 0 :(得分:2)
.trigger()
是您正在寻找的方法。必须在.bind()
$('#somediv').trigger('myclick')
答案 1 :(得分:0)
正如杰夫所说,你需要在任何导致事件触发的逻辑中调用$('#somediv').trigger('myclick');
。您原始问题中的绑定示例对我来说是正确的,因此您应该只需要这样做。
答案 2 :(得分:0)
我最后为此写了一个插件 - 一个好的起点是http://blogs.sitepoint.com/how-to-develop-a-jquery-plugin/ 和http://starter.pixelgraphics.us/
我已经编写了我的插件,如果有人有兴趣,请将它放在这里。
http://code.google.com/p/jquery-touch-area/
享受