我有到DOM使用jQuery來inser一些HTML網頁應用程序:jQuery的.insertAfter()插入多次
$('<div />').html('<span class="' + someID + '-id">SomeText</span>').insertAfter($(".someidentifier"));
我遇到的問題是,可以有很多的元素與someidentifier
類,並與他們每個人的,這個代碼將運行,以便你可以想像,如果我有他們兩個:
<div class="someidentifier">Some text</div>
<div class="someidentifier">Some text</div>
該代碼會產生在DOM如下:
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
<span class="3123564654-id">SomeText</span>
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
<span class="3123564654-id">SomeText</span>
地方,因爲它應該是:
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
,所以我想到了用.next()
功能,並檢查是否下一個兄弟有我想要的輸出,如果是取消插入類。這是我無法弄清楚的部分,因爲我只是說insertAfter(jQueryObject)
,我不知道如何攔截並取消它。我應該注意到,我不能在它周圍使用if語句,因爲在這種情況下jQueryObject
已經是div
。
如果span
的3123564654-id
類作爲下一個兄弟,我可以修改選擇器以不包含對象嗎?
看起來好像沒什麼問題http://jsfiddle.net/arunpjohny/Adu9U/1/ –
的代碼運行兩次,其實永遠我它看到它運行的divs的真實性。不能真正解釋爲什麼,因爲我在NDA之下,但不得不這樣做。 – hjavaher
換句話說,第一次代碼運行它會插入他們就好,發送時間運行,它會再次插入跨度。所以我留下了4跨度,而不是僅僅2 http://jsfiddle.net/Adu9U/2/ – hjavaher