我創建了一個函數,它具有樹DOM的兩個節點作爲參數,並且如果第一個節點的標記與第二個節點的標記不同,則返回1,反之亦然0 。 這裏是方法:比較DOM樹中兩個節點文本的函數
function foo(node1, node2) {
if(node1.nodeName !== node2.nodeName) {
return 1;
}
return 0;
}
這是爲我好,如果作爲參數傳遞的結點是具有不同標記(例如,P和I,#text和U,等)的節點。但是,如果節點是相等的並且是兩個文本(#text),我想不僅比較節點類型,而且還比較內容(本例中爲兩個文本)。所以如果文本不同,做一定的操作,如果它們相等。
在我的應用程序中,我知道文本節點總是在樹DOM的樹葉中找到。
例如,如果我有這兩個DOM樹:
P
/ | \
some B A
| |
text here
P
/ \
other U
/ \
TT I
| |
beautiful text
和我打電話用2個參數(第一節點處於所述第一樹,在第二樹中的第二節點)的函數:
foo(P, some)
=>return 1
foo(some, some)
=>return 0
foo(some, beautiful)
=>return 1
因爲文字是不同的- 等...
我怎樣才能改變我的函數來得到我想要的東西? 作爲文本的收入而不僅僅是節點的類型?
謝謝