2016-10-05 145 views
0

我不是這個小書籤的原創者,但我正在嘗試改進/更新它以在頁面加載後執行腳本。我想在頁面加載時點擊書籤,它會在最後加載時執行任務。我已經試過$(文件)。就緒和jQuery(文件)。就緒(函數($)的多種形式無濟於事請幫助謝謝在javascript/jquery中加載頁面後執行腳本

javascript:(function(){ 
function setName(){ 
    jQuery.noConflict(); 
    jQuery("#456_linier").dblclick(); 
    jQuery("#456").val("First Name Last"); 
    jQuery("input[title='Save']").click(); 
} 

if (typeof jQuery == 'undefined') { 
    var s = document.createElement('script'); 
    s.setAttribute('src','https://code.jquery.com/jquery-3.1.1.min.js'); 
    s.setAttribute('type','text/javascript'); 
    document.getElementsByTagName('head')[0].appendChild(s); 
    } 
    setTimeout(setName, 1000); })(); 

回答

1

注:「在頁面加載後」可以意味着很多東西,所以我把它理解爲「所有的HTML載入後」,認定這是一個相當強大的解釋

這應該照顧你,用少許香草的Javascript:

document.addEventListener("DOMContentLoaded", function(event) { 
    console.log("Whatup Homie!!!"); 
}); 
+0

我說這之前'函數的setName(){',不幸中的代碼仍然沒」直到我在頁面完全加載後再次按下小書籤爲止。 – dcc

+0

呦 - 在下面增加了一個補充 –

0

包裝紙功能聲明不會這樣做,無論如何,我認爲如果你不這樣做,setTimeout會自動調用函數它就像一個回調。試試這個:

enter image description here

或潛在的這一戰略,與事件監聽負載功能本身內:

enter image description here

+0

我刪除了原始的document.addEventListener,並添加了你放在底部的東西(並刪除了'setTimeout(setName,1000);'這是在最底部),現在什麼也沒有發生所有,我沒有得到任何我發現奇怪的控制檯錯誤。代碼是如何在問題作品中原創編寫的,只有在頁面完全加載後才能正常工作。謝謝您的幫助! – dcc