2016-04-27 131 views
0

有時前,我用的功能​​作爲當JQuery取消.load()函數?

// document load 
$(document).load(function() { 
    // ... code ... 
}); 

,但現在,它不起作用。

我只使用功能.ready()

// document ready 
$(document).ready(function() { 
    // ...code... 
}); 

函數.load()現在被用作AJAX的一部分。

我記得在這兩個函數之間有一些不同之處。現在取消了.load(),那裏是一樣的嗎?

代碼爲:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<title>Examples</title> 
<meta name="description" content=""> 
<meta name="keywords" content=""> 
<link href="" rel="stylesheet"> 
<script type="text/javascript" src="jquery-2.2.3.js"></script> 

<script> 
    $(document).ready(function() { 
     console.log("ready"); 
    }); 

    $(document).load(function() { 
     console.log("load"); 
    }); 
</script> 

</head> 
<body> 

</body> 
</html> 

和控制檯表示: 「準備好了」

功能.load()不工作!

+0

'$(文件).load(FN)'仍然正常工作,所以我不知道你在問什麼。但請注意'load()'事件處理程序已被棄用。如果你想要將來的代碼使用'$(document).on('load',fn)''。但它提供的功能是相同的。 –

+0

「*當[did] JQuery取消.load()函數?*」 - 答案:他們沒有[他們沒有] –

回答

1

有很多load()

$('selector').load(function() {}); // #1 
$('selector').load('url', {data}, function() {}); //2 

#1 2函數頭時元件已裝起來將執行的代碼。
#2將調用ajax提供的url(可選){data}對象,並將替換$('selector')的內容並執行回調函數。

如果尋找.load(function() {}).ready(function() {})之間的差異,比對照this question

+0

Infact,「#1」不起作用! – Oolong

+0

我有修改描述,你可以查看嗎? – Oolong

+0

'$(window).load(function(){ \t \t console.log(「load」); \t});'It works!爲什麼? – Oolong

0

兩者都不同。

當你使用load()時,它會在加載頁面的所有元素(如圖像)後調用。

當你使用ready()時,它會在DOM準備就緒後調用。

如果你想綁定ajax事件,那麼請看看on和delegate以及你也可以更喜歡live方法,但它已被棄用。