[英]$(window).load Chrome,Safari problem
好的,這是問題所在
$(window).load(function () {
\\Do something
});
和其他變體在 chrom 和 safri 中不起作用。 FF,IE Opera 工作正常我搜索但沒有找到任何工作解決方案有人知道如何在頁面加載完成后檢查 chrome、safari?
如果您想在頁面加載時執行某些操作,您可以嘗試以下代碼之一。
$(document).ready(function(){
//Page loaded
});
要么
$(function(){
//Page loaded
});
編輯:試試這個
window.onload = function(){
//Page loaded
};
或者如果你想使用 jQuery 然后試試這個
$(window).bind('load', function(){
//Page loaded
});
我有一個頁面可以在 FF 中正常加載但在 Chrome 中不起作用,因為我有 2 個使用 $(window).load(function() 的腳本,而第二個腳本似乎在圖像出現之前執行。
第一個腳本檢查丟失的圖像並替換錯誤圖像:
$(window).load(function() {
$("img").each(function(){
var image = $(this);
if(image.context.naturalWidth == 0 ||
image.readyState == 'uninitialized'){
$(image).unbind("error").attr(
"src", "assets/img/image_missing.jpg"
);
}
});
});
第二個函數重新排列一行中的元素,以防窗口大小調整(這是一個響應式頁面):
$(window).load(function() {
columnConform();
});
當我在 Chrome 中對此使用 debug 時,會執行第一個函數,但是當執行第二個函數時,任何丟失的圖像都沒有顯示。 它們僅在第二個功能完成后出現。
頁面首次加載時,未找到“Socketry”的圖像,因此 Spanners/Metric/Imp 顯示在同一行的正下方。
假設這是正確的,第二個腳本重新對齊行,但是當顯示“圖像丟失”時,這會強制扳手到下一行。
“圖像缺失”應該在行對齊之前顯示,在這種情況下,行將正確對齊,就像在 Firefox 中一樣。
*我會發布屏幕截圖,但我沒有 10 名聲望 - ggrrrhh! 有時一張圖片值 1,000 字... *
猜猜我最好用文字描述頁面...
我有 13 張圖像顯示為 6 行,所以 2 個完整的行和 1 個在第三行。 找不到第 6 個圖像,因此第 7 個圖像顯示在頂行缺失圖像符號的正下方,而不是作為第 2 行的第 1 個圖像。 第二個腳本對齊行,假設第 7 個圖像在頂行,然后第 1 個腳本使“圖像丟失”圖像出現,這迫使第 7 個圖像自行排在第 2 行。 加載所有圖像后需要執行第二個腳本。 希望這是有道理的。
window.load
和document.ready
都適合我,這是一個小提琴
我不認為這會回答你的問題,但在我的情況下load()
並沒有在Chrome中單獨工作,因為我試圖加載到<form>
這是另一個里面<form>
Chrome 完全忽略了內部<form>
的存在。
嘗試下載未壓縮版本的 jQuery 並對其進行調試。
在本地主機上工作時,這可能會發生在某些瀏覽器中(我在 Opera 和 Chrome 中經歷過)。 "ready" 事件似乎在 javascript 有機會添加偵聽器之前觸發,因此 $(window).ready 永遠不會觸發。
示例:當頁面完全加載(包括圖形)時運行函數。
$( window ).load(function() {
// Run code
});
示例:在每次加載圖像時將 bigImg 類添加到高度大於 100 的所有圖像。
$( "img.userIcon" ).load(function() {
if ( $( this ).height() > 100) {
$( this ).addClass( "bigImg" );
}
});
有關更多信息,請參閱http://api.jquery.com/load-event/ 。
試試這個方法:
$(document).ready(function(){
//Do something
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.