2013-05-29 52 views
1

所以我想執行代碼時,我點擊一個div。使用jquery使div可點擊並運行一個函數

所以我有一個功能

function froth(){$("#area").load("test.html #enquiry1");} 

我想調用這個函數,當我點擊一個div

<div id="t1">Test</div> 

所以我嘗試使用此代碼

$('#t1').click(function(){ 
    froth(); 
    }); 

都能跟得上它沒有工作。

我去到HTML文檔,做這個

<div id="t1" onclick="froth()">Test</div> 

和它的作品完美

所以我的問題是,我在這裏做錯了什麼?爲什麼它會在HTML文檔中工作,並且當我嘗試使用jQuery進行點擊時不工作?

+2

你換綁定你'$(document).ready'中的jQuery代碼?或'$(function(){...})'? – Xeon

+0

是的,它包裹得很好,很緊 – Ghozt

回答

5

的主要問題是,你需要點擊事件的DOM其餘後加載

$(document).ready(function() { 
    $('#t1').on('click', function(){ 
     froth(); 
    }); 
}); 

你可以看到一個活生生的例子here

+0

它不起作用。我一直有無盡的麻煩事情,但在JS中工作,但只要你調用它的HTML中的函數... – Ghozt

+0

你可以給我們你的整個JS文件 - 它可能是你的函數'froth()'出的範圍 – jacktheripper

+0

http://pastebin.com/KMctFtSX – Ghozt

1
$(document).on('click', '#t1', function() { 
froth(); 
});