本文目錄一覽:
- 1、js 怎么讓圖片加載完成后才執行下面代碼?
- 2、js如何判斷引入的js文件是否加載完畢
- 3、用js判斷頁面是否加載完成實現代碼
- 4、js中,如何等待多個圖片加載完后再執行其他的js代碼。
- 5、如何讓頁面加載完成后執行js
js 怎么讓圖片加載完成后才執行下面代碼?
要把圖片當成是圖片對象才行;
var a=new Image(); //這個是原生的JS實例化
a.src=arr[shownum++].url;
然后Image對象有一個屬性“onload”,這個就是加載完成,當加載完成之后你可以執行一個函數比如
a.onload=function(){
alert("完成加載");
}
這樣當你的圖片加載完成后就執行下面的函數了。
相關問題:
如果你是將JS函數寫入到一個單獨的文件中,如function.js,
下面為function.js
/*
這里最好是記錄一下函數的作用,如果有參數,最好就是說明一下
函數名稱:func1
函數作用:測試加載外部JS文件
參數說明:無
*/
function func1(){
alert("調用了函數1");
}
/*
函數名稱:func1
函數作用:測試加載外部JS文件
參數說明:無
*/
function func2(){
alert("調用了函數2");
}
至于JS的書寫規范有很多種,主要就是方便瀏覽及習慣,你可以自己看看書上的書寫方式或者參考一下其他高手方式。
出現亂碼的原因就是1樓所說,原因是你的JS文件和HTML文件的編碼不一致,而且你的JS文件有中文(如果js文件只有英文的話,即便是編碼不一致也不會出現亂碼情況。)
你應該用記事本打開你的JS文件,然后點擊“文件”--另存為--把編碼改為“UTF-8”的編碼,
這樣就不會出現亂碼了。
js如何判斷引入的js文件是否加載完畢
js怎么判斷flash是否加載完畢了呢?
我們怎么在flash加載完畢之時,回調一個我們設定的js函數?
這個問題,一直困擾了我很久,直到今天,請教了一個非常牛B的人物之后,突然來了感覺!
呵呵,也許,這個問題在你們看來不是問題,不過對于我來說,確實是個問題,因為我一直不知道該怎么判斷swf文件是否加載完畢了?
從前都是只知道img.onload等等。
好了,言歸正傳,我們到底該怎樣判斷一個flash是否加載完了呢?
沒錯,就是輪詢,然后判斷flash的某個方法是否能正常運行?
示例如下(偽代碼):
01 (function () { 02 var flash = 網頁上某個flash對象。 03 04 var interval = setInterval(function () { 05 try { 06 if(flash.IsPlaying()) { //輪詢flash的某個方法即可 07 callBack callBack.call(flash, args); //回調函數 08 clearInterval(interval); 09 } 10 } catch (ex) { 11 12 } 13 }, 1000); 14 15 var callBack = function () { 16 alert('loaded'); 17 } 18 })();
//具體運用時,flash放進setInterval或者setTimeout的函數閉包中時,可能會由于JavaScript單線程問題,導致flash不能調用IsPlaying等flash player函數或者調用結果不對等狀況,這里有個臨時的解決辦法,我們可以讀取在輪詢函數中讀取flash的TotalFrames屬性,讀取得到,我們就可以認為flash已經完全加載到頁面中了!!!
用js判斷頁面是否加載完成實現代碼
然后用document.readyState == “complete”判斷是否加載完成代碼如下:代碼如下: document.onreadystatechange = subSomething;//當頁面加載狀態改變的時候執行這個方法. function subSomething() { if(document.readyState == “complete”) //當頁面加載狀態 myform.submit(); //表單提交 } 頁面加載readyState的五種狀態原文如下:0: (Uninitialized) the send( ) method has not yet been invoked. 1: (Loading) the send( ) method has been invoked, request in progress. 2: (Loaded) the send( ) method has completed, entire response received. 3: (Interactive) the response is being parsed. 4: (Completed) the response has been parsed, is ready for harvesting. 翻譯成中文為: 0 - (未初始化)還沒有調用send()方法 1 - (載入)已調用send()方法,正在發送請求 2 - (載入完成)send()方法執行完成,已經接收到全部響應內容 3 - (交互)正在解析響應內容4 - (完成)響應內容解析完成,可以在客戶端調用了
js中,如何等待多個圖片加載完后再執行其他的js代碼。
可以在js全局代碼中,增加一個變量n,用作計數器,表示總圖片數。
然后使用圖片的onload事件,每成功加載一次圖片,將計數器n減去1
當n變成0時,表示圖片均加載完畢,這時即可開始執行其他JS代碼。
具體示例代碼:
var?n=$pre4y_main.length;
...
$img[0].onload=function(){????...
????n--;
????if(!n){
????????//執行其他JS代碼
????}
};
如何讓頁面加載完成后執行js
//加載事件
window.onload=function(){
????alert('加載完畢');
};
以下是window.onload與?$(document).ready()的加載區別,可以參照下
window.onload:必須等到頁面內包括圖片的所有元素加載完畢后才能執行。?
$(document).ready():是DOM結構繪制完畢后就執行,不必等到加載完畢。