Re: [問題] 找出連續具有相同屬性的dom物件
================
HTML
================
<div id='main>
<div id='a1' class='aaa'></div>
<div id='a2' class='aaa'></div>
<div id='a3' class='aaa'></div>
<div id='c1' class='ccc'></div>
<div id='a4' class='aaa'></div>
</div>
================
jQuery
================
$('.aaa:first-child, :not(.aaa) + .aaa').each(function() {
$(this).nextUntil(':not(.aaa)').andSelf()
.wrapAll('<div style="border:solid 3px blue" />');
});
概念講解:
先抓所有綠色 elements, 再用 each 抓每個綠色後面的黃色 elements
每次抓完就馬上 wrapAll
※ 引述《Futurend (未來)》之銘言:
: ※ 引述《evernever (NeverEver)》之銘言:
: : ================
: : HTML
: : ================
: : <div id='main>
: : <div id='a1' class='aaa'></div>
: : <div id='a2' class='aaa'></div>
: : <div id='a3' class='aaa'></div>
: : <div id='c1' class='ccc'></div>
: : <div id='a4' class='aaa'></div>
: : </div>
: : ================
: : jQuery
: : ================
: : var list = $(".aaa:first").nextUntil(":not(.aaa)").andSelf();
: : alert(list.size()); // 應該是 3 個
: 整理前輩得指導後修正寫法如下
: $('.quick').each(function () {
: var $this = $(this);
: if (!$this.data('done'))
: $this.nextUntil(':not(.quick)').andSelf()
: .wrapAll('<div style="border:solid 3px blue" />')
: .data('done', true);
: }).removeData('done');
: 這樣已經可以達到我要的效果
: 只是想請問這樣的code還有沒有改善的空間呢
: 或著有哪些應注意還沒注意到的事情
※ 引述《Futurend (未來)》之銘言:
: ※ 引述《evernever (NeverEver)》之銘言:
: : ================
: : HTML
: : ================
: : <div id='main>
: : <div id='a1' class='aaa'></div>
: : <div id='a2' class='aaa'></div>
: : <div id='a3' class='aaa'></div>
: : <div id='c1' class='ccc'></div>
: : <div id='a4' class='aaa'></div>
: : </div>
: : ================
: : jQuery
: : ================
: : var list = $(".aaa:first").nextUntil(":not(.aaa)").andSelf();
: : alert(list.size()); // 應該是 3 個
: 整理前輩得指導後修正寫法如下
: $('.quick').each(function () {
: var $this = $(this);
: if (!$this.data('done'))
: $this.nextUntil(':not(.quick)').andSelf()
: .wrapAll('<div style="border:solid 3px blue" />')
: .data('done', true);
: }).removeData('done');
: 這樣已經可以達到我要的效果
: 只是想請問這樣的code還有沒有改善的空間呢
: 或著有哪些應注意還沒注意到的事情
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.64.54.125
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 4 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章