Jquery Live功能在Firefox中不起作用

时间:2013-06-05 13:20:46

标签: jquery

我的脚本代码

$(function () {
    $(".ui-button-text").live("click", function () {
        var buttonName = $(this).text();
        if (buttonName == 'Continue') {
            $("#runloGc").prop("disabled", true);
        }
    });
});

Html代码

  <button type="button" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button" aria-disabled="false"><span class="ui-button-text">Cancel</span></button>

3 个答案:

答案 0 :(得分:0)

{@ 1}}函数已弃用,请尝试使用.on()

.live()

或尝试

$(function(){
    $(".ui-button-text").on("click",function(){
        var buttonName=$(this).text();
         if(buttonName == 'Continue'){
             $("#runloGc").prop("disabled",true);
         } 
     });
});

答案 1 :(得分:0)

您应该使用以下内容:

// New way (jQuery 1.7+) - .on(events, selector, handler)
$('#container').on('click', '.ui-button-text', function(event) {
    event.preventDefault();
    alert('testlink'); 
});

这会将您的事件附加到#container元素中的任何锚点, 减少必须检查整个document元素树并提高效率的范围。

这是最好的情况。如果您不确定container元素,可以使用document,然后像:

$(document).on('click', '.ui-button-text', function(event) {

FIDDLE DEMO

答案 2 :(得分:0)

根据您更新的代码,您应该将事件绑定到button而不是span

  

<强> Demo

$(document).on('click', 'button.ui-button', function () {
 // code
});