【问题标题】:Jquery live not working with zclip?Jquery live 不能与 zclip 一起使用?
【发布时间】:2013-10-31 00:16:54
【问题描述】:

我需要复制剪贴板功能来复制文本框中的文本,所以我使用zclip插件来做,

这是我的 jquery

$(document).ready(function(){
$('#clip_copy').live('click', function () { 
    alert('ddddddddddd');

       $(this).zclip({ path:'js/ZeroClipboard.swf', copy:$('#shrink_url_copy').text()});

});
});

但是第一次使用这个zclip功能不起作用,但是第二次起作用时点击按钮,这里有什么问题???

【问题讨论】:

  • 你用的是什么版本的jQuery?

标签: jquery zclip


【解决方案1】:

.live() 在 1.7 中已弃用并在 1.9 中删除。请改用.on()

$(document).on('click', '#clip_copy', function () { 
    //Your code
});

注意:您不应该使用document,因为父节点应该是最近的静态父元素,并且始终存在于 DOM 中。默认情况下,我们倾向于在答案中使用document,但这对性能不利。

【讨论】:

  • 但是,实时点击也仅在第二次点击时有效
【解决方案2】:

使用.on()

阅读Deprecated Selectors

.live() 在 1.7 中被弃用并在 1.9 中被移除。

由于元素是动态添加的,你不能直接将事件绑定到它们。所以你必须使用Event Delegation

$(document).on('click', '#clip_copy', function () { 
    alert('ddddddddddd');
});

语法

$( elements ).on( events, selector, data, handler );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-04
    • 2021-05-09
    • 2020-01-28
    相关资源
    最近更新 更多