簡體   English   中英

jQuery中的.click(…)遇到問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM