[英]Having trouble with .click(…) in jQuery
所以我大約一個小時前才開始嘗試學習jQuery,並且我已經有了這段代碼
只是想弄清楚為什么$(".actions .readbody").click(...)
行似乎不起作用。
我最初是在所有按鈕都位於< ul >
而不是< div >
(每個按鈕都有自己的< li >
)。 readbody
類已添加到“讀取正文”按鈕的< li >
而不是直接添加到按鈕中。 有問題的行更像$(".actions li.readbody button").click(...)
。
完整的代碼發布在jsfiddle上: http : //jsfiddle.net/J6u5X/
我jsFiddled您的示例-用這種方式弄弄代碼要容易得多。 參見http://jsfiddle.net/v7ayc/
我首先注意到的是單擊處理程序的while
循環中的=
運算符,我想您的意思是==
。
無論如何,用以下代碼替換函數的主體即可切換內容:
$(this).parent('.actions').siblings('.body').toggle();
一般來說,jQuery提供了遍歷DOM的更簡單易讀的方式。 隨意使用它代替標准DOM接口。
從Link .actions沒有子類.readbody? 使用$('.actions button').click..
或給您的按鈕一個類名,然后在click方法中引用它們
引用此鏈接jQuery
$(".test").val()
$("#test").val()
.test is class name of the HTML tag
#test is id name of the HTML tag
問題是您在點擊處理程序中嘗試執行的操作不起作用。 您正在通過兩個parentNode調用遍歷整個鏈
var mybody = this.parentNode.parentNode
這需要
var mybody = this.parentNode
您只需要一個即可訪問文章正文。
看到更新的小提琴,它可以按您期望的方式工作http://jsfiddle.net/8zsr5/2/
我認為問題在於JavaScript根本找不到所需的元素。
我已經對您的代碼進行了修改,以切換出while循環,並且可以正常運行了。 這是一個小提琴 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.