這是我的HTML代碼:如果不尊重,即使內在價值,它是假
$(function() {
function reverse(s) {
return s.split("").reverse().join("");
}
$('button').click(function() {
var span = $(this).siblings('span');
span.text(function() {
var reversed = reverse($(this).text());
return reversed;
});
if (!span.children('small').length) {
span.wrapInner('<small></small>');
console.log(!span.children('small').length);
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<span>reverse1</span>
<span>reverse2</span>
<button>reverse me</button>
我把的console.log進入if語句添加一個小唯一旦在DOM中(不確定wrapInner函數),檢查小節點是否只添加一次。我在邏輯表達式中檢查了值,在沒有小標記的情況下爲真,在添加時爲false。任何人都可以幫助我理解?
不,它讓打印假值,即使小標籤已經增加... – Salvio
你去掉小標籤每次重新運行時的文本()調用。它完全刪除給定範圍的所有內容,並用反向字符串替換它。 – Snowmonkey
所以,如果我有問題,我需要檢查的跨度有改變它之前textnode,是吧? – Salvio