看起來像目標是一個HTML DOM對象,而不是一個jQuery對象。我想測試一下,看看是否event.target是一個instanceof的jQuery像這樣:
var target = (event.target instanceof jQuery) ? event.target : jQuery(event.target);
這將確保目標對象與調用.closest()
編輯前的jQuery對象:改變$至jQuery的使用noConflict
編輯#2的情況下,我改變了你整個第二種方法是:
var _body = jQuery("body");
_body.click(function() {
// affilate takeover functions
if(_body.attr('id').length
&& _body.closest('header').length == 0
&& _body.closest('#wrapper > nav').length == 0
&& _body.closest('#leaderboard > div').length == 0
&& _body.closest('#wrapper2').length == 0
&& _body.closest('body > footer').length == 0
&& _body.attr('name') != 'userfile'
&& _body.closest('.ui-datepicker-calendar').length == 0
&& _body.closest('.ui-datepicker-prev').length == 0
&& _body.closest('.ui-datepicker-next').length == 0
&& _body.closest('.editor_control_bar').length == 0
&& _body.closest('.ui-autocomplete').length == 0
&& _body.closest('#fancybox-overlay').length == 0
&& _body.closest('#fancybox-wrap').length == 0
&& _body.attr('href') != '#shoutbox'
&& !_body.hasClass('ui-button-text')
&& _body.closest('.ui-dialog').length == 0) {
// variables
var affiliate_url = jQuery("input[name=affiliate_url]").val();
window.open(affiliate_url);
}
});
任何想法爲什麼它會在論壇上失敗,但不是主網站? – 2011-05-24 04:13:40
嗯,我試過應用它,但它仍然有相同的錯誤。 – 2011-05-24 04:17:52
呃,我想我發現了這個問題,顯然其他.js文件之一是干擾w/it。 – 2011-05-24 04:34:13