我已經繼承了一個jQuery組件,它模擬用戶從下拉菜單中選擇一個選項。Jquery namepsace按預期工作
該組件可以在http://jsfiddle.net/Qg9f4/2/看到,它似乎工作正常。
但是,我們正在嘗試將我們的所有腳本命名爲一個文件。一般來說,這可以根據this thread正常工作。但是,當我們對命名空間使用相同的技術時,此組件停止工作。初始化腳本似乎可以很好地解析$(document).ready,但是在單擊組件時沒有任何實際發生。
我已經在jsfiddle中評論過什麼是行不通的。
這工作
$(document).ready(function() {
$(".dselector dt a").click(function() {
$(".dselector dd ul").toggle();
});
$(".dselector dd ul li a").click(function() {
$(".dselector dd ul").hide();
});
$(document).bind('click', function (e) {
var $clicked = $(e.target);
if (!$clicked.parents().hasClass("dselector")) $(".dselector dd ul").hide();
});
});
這不工作
$(document).ready(zxcf.init());
var zxcf = {
init: function() {
$(".dselector dt a").click(function() {
$(".dselector dd ul").toggle();
});
$(".dselector dd ul li a").click(function() {
$(".dselector dd ul").hide();
});
$(document).bind('click', function (e) {
var $clicked = $(e.target);
if (!$clicked.parents().hasClass("dselector")) $(".dselector dd ul").hide();
});
}
};
請在這裏發表您的代碼。我討厭不得不去jsFiddle看看有什麼問題。 – 2012-01-14 21:25:13
添加到上述帖子的代碼 – JonoB 2012-01-14 21:30:27