.click()不使用特定的选择器

时间:2013-04-26 01:44:59

标签: javascript jquery

设置选择器:

            btNext = $('<a>' + options.labelNext + '</a>').attr("href", "#").addClass("buttonNext");
            btPrevious = $('<a>' + options.labelPrevious + '</a>').attr("href", "#").addClass("buttonPrevious");
            btFinish = $('<a>' + options.labelFinish + '</a>').attr("href", "#").addClass("buttonFinish");
            test = $('<a class="LinkMe" href="#">MotherBoard</a>')

点击():

                $(test).click(function () {
                    showStep(0);
                });
                $(btNext).click(function () {
                    if ($(this).hasClass('buttonDisabled')) {
                        return false;
                    }
                    doForwardProgress();
                    if ($.isFunction(options.onNext)) {
                        if (!options.onNext.call(this, $(steps))) {
                        }
                    }
                    return false;
                });
                $(btPrevious).click(function () {
                    if ($(this).hasClass('buttonDisabled')) {
                        return false;
                    }
                    doBackwardProgress();
                    if ($.isFunction(options.onPrevious)) {
                        if (!options.onPrevious.call(this, $(steps))) {
                        }
                    }
                    return false;
                });
                $(btFinish).click(function () {
                    if (!$(this).hasClass('buttonDisabled')) {
                        if ($.isFunction(options.onFinish)) {
                            if (!options.onFinish.call(this, $(steps))) {
                                return false;
                            }
                        } else {
                            var frm = obj.parents('form');
                            if (frm && frm.length) {
                                frm.submit();
                            }
                        }
                    }

                    return false;
                });

除了选择器(测试)之外,所有点击功能都工作,我尝试从插件中取出点击功能并在

$(document).ready(function () {});

它仍然没有用,请帮助。

2 个答案:

答案 0 :(得分:2)

尝试做:

test.click(function() {});

$("a.LinkMe").click(function() {});
// since test is a link having a class 'LinkMe'

但是,如果这些元素动态添加到您的HTML中,您可以使用.on().delegate()

$("a.LinkMe").on("click", function() {});
// OR
$(document).on("click", "a.LinkMe", function() {});
// OR
$("body").delegate("a.LinkMe", "click", function() {});

答案 1 :(得分:-2)

看看this

而不是做

test = $('<a class="LinkMe" href="#">MotherBoard</a>')

你想要改为

$test = $('a.LinkMe');
// or just
$test = $('.LinkMe');

btNextbtPreviousbtFinish相同。我不确定他们为什么会工作,也许其他人可以向我解释。