Làm cách nào để nhận được văn bản của phần tử không có con? Không phải element.textContent
cũng không phải element.innerText
dường như đang hoạt động.nhận văn bản của phần tử không có con trong javascript
HTML:
<body>
<h1>Test Heading</h1>
<div>
Awesome video and music. Thumbs way up. Love it. Happy weekend to you and your family. Love, Sasha
</div>
</body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript">
fool("body");
</script>
và đây là fool
chức năng:
jQuery.fn.justtext = function(text) {
return $(this).clone()
.children()
.remove()
.end()
.text();
};
function fool(el) {
reverse(el);
function reverse(el) {
$(el).children().each(function() {
if($(this).children().length > 0) {
reverse(this);
if($(this).justtext() != "")
reverseText(this);
} else {
reverseText(this)
}
});
}
function reverseText(el){
var text = el.textContent;
var frag = text.toString().split(/ /);
var foo = "";
var punctation_marks = [".",",","?","!"," ",":",";"];
for(i in frag){
if(punctation_marks.indexOf(frag[i]) == -1)
foo += actualReverse(frag[i],punctation_marks) + " ";
}
el.textContent = foo;
}
function actualReverse(text,punctation_marks) {
return (punctation_marks.indexOf(text.split("")[text.split("").length-1]) != -1)?text.split("").slice(0,text.split("").length-1).reverse().join("") + text.split("")[text.split("").length-1] : text.split("").reverse().join("");
}
}
chỉnh sửa: sử dụng node.nodeType
không thực sự giúp đỡ và đây là lý do: Imaginge HTML sau
<td class="gensmall">
Last visit was: Sat Mar 31, 2012 10:50 am
<br>
<a href="./search.php?search_id=unanswered">View unanswered posts</a> | <a href="./search.php?search_id=active_topics">View active topics</a>
</td>
nếu tôi muốn sử dụng nodeType
, chỉ có văn bản của phần tử a
sẽ thay đổi, nhưng không phải là td
bản thân ("lần truy cập trước ....")
plz gửi html của bạn – Jigs
Bất kỳ mã? Bộ chọn của bạn có thể sai, 'phần tử' không chứa bất kỳ nội dung nào khi' .textContent' và 'innerText' trống. –
Chính xác thì ý của bạn là gì, "không có con"? – Pointy