HTML代码是这样的
<div> <p> Owen Perry的作品总有一种怀旧的电影感。这位网页设计师涉足摄影三年。在CIRCA 1983上,Owen展示了他从2011年开始至今的在加拿大以及国外旅行中所拍摄的照片。他的作品就像一张复古的明信片,也像一幅很久以前画在牛皮纸上的画。 </p> <textarea class="text"></textarea> <button id="sub" class="but">回复</button> </div>
原本觉得点击回复按钮获取<p></p>里面的innerHTML 使用
function onclickBut(){ var But = document.getElementsByClassName("but"); for(var i = 0;l=But.length,i<l;i++){ But[i].onclick = function(){ var node = this.parentNode.previousSbiling.previousSbiling.innerHTML;//获取p节点中的内容 } } }
可是我不知道出现了什么问题。
后来又觉得使用
function onclickBut(){ var But = document.getElementsByClassName("but"); for(var i = 0;l=But.length,i<l;i++){ But[i].onclick = function(){ var node = this.parentNode.childNodes.firstChild.innerHTML;//获取p节点中的内容 } } }
可是都一样获取不了
后来干脆直接
function onclickBut(){ var But = document.getElementsByClassName("but"); for(var i = 0;l=But.length,i<l;i++){ But[i].onclick = function(){ var node = this.parentNode.getElementsByTagName("p")[0].innerHTML;//获取p节点中的内容 } } }
请教大牛们更为简便的方法!!