日期:2014-05-16  浏览次数:20321 次

关于自己开发插件的问题求大神帮忙
$(".test1,test2,test3").jqueryName();
如果同时给这3个绑定了这个jqueryName的事件,那么只要执行一个,其他两个都会执行,求解

------解决方案--------------------
$.fn.jqueryName = function(eventname) {
    var _this = this;
    this.each(i, dom) {
        $(dom).bind(eventname, function() {
            _this.filter(':not(dom)').bind(eventname).trigger(eventname);
        });
    }
}
------解决方案--------------------
$(".test1,.test2,.test3").bind("click", jqueryName);

不知道你要邦定的是什么事件,另外我猜test1,test2,test3都是class


------解决方案--------------------
<!DOCTYPe html>
<html>
    <head>
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js'></script>
    </head>
<body>
<div class='divclassa'>a</div>
<div class='divclassb'>b</div>
<div class='divclassc'>c</div>
<script type='text/javascript'>
var fn = function() {
    alert('hi');
}
$.fn.jqueryName = function(eventname, fns) {
    var _this = this;
    this.each(function(i, dom) {
        $(dom).bind(eventname, function() {
            fns();
            _this.filter(':not(dom)').bind(eventname, fns).trigger(eventname);
        });
    });

$('.divclassa,.divclassb,.divclassc').jqueryName('click', fn);
</script>
</body>
</html>