我目前有以下代碼添加一個燈箱到鏈接有rel="facebox"
。jQuery觸發頁面加載操作
$(document).ready(function() {
$('a[rel*=facebox]').facebox();
});
這個效果很好,直到頁面加載時間過長。
如何在文檔加載之前應用此選項?理想情況下,我想先調用.facebox()
函數,並在DOM加載時,它搜索與rel="facebox"
的任何鏈接並應用該函數。
有點像.on()
功能,但沒有事件。
這有道理嗎?提前致謝!
$(document).on('click', 'a[rel*=facebox]', function() {
$.facebox({ ajax: $(this).attr('href') });
return false;
});
希望幫助別人:
你不能在DOM準備好之前調用它,那麼選擇器就不會匹配任何東西! – tymeJV
@tymeJV您可以將JS直接放置在HTML元素之後,並且可以在'document.ready'事件觸發前選擇它。這是加速渲染JS重站點的一種常見做法。你可能想要使用本地JS而不是像jQuery這樣的框架,因爲那樣你就不必等待jQuery加載... – Jasper
你可以用setInterval()延遲頁面加載。所以你可以先運行你的函數,然後顯示頁面。 –