任何人都可以帮忙解释这段代码的作用吗?具体是什么“id * = section”。意思?
Prototype script $$('span[tab_caption="abcd"]')[0].select('span[id*=section.]')[0]
答案 0 :(得分:1)
我怀疑'。'可能是一个错字但我不确定。这似乎正在做的是找到属性为tab_caption=abcd
的第一个跨度,然后在该元素内找到id为*section*
的第一个跨度。
当我尝试使用尾随'。'时,我从原型Syntax error, unrecognized expression: [id*=section.]"
收到错误。但没有'。'事情成功了。
查看像这样的DOM样本
<span tab_caption="ac">
span ac
<span id="section1">section1</span>
</span>
<span tab_caption="ad">
span ad
<span id="section2">section2</span>
</span>
<span tab_caption="ac">
span ac
<span id="section3">section3</span>
</span>
<span tab_caption="ad">
span ad
<span id="section4">section4</span>
</span>
然后在控制台中运行那些选择器:
> $$('span[tab_caption="ac"]')[0].select('span[id*=section]')[0]
<span id="section1">section1</span>
> $$('span[tab_caption="ad"]')[0].select('span[id*=section]')[0]
<span id="section2">section2</span>
如您所见,第一个查询选择了tab_caption=ac
的第一个范围,并给了我section1。第二个从tab_caption=ad
中选出了第一个,并给了我section*
的第一个匹配section2
。
你确定'。'应该在select
参数中?
答案 1 :(得分:0)
此属性选择器已添加CSS3并匹配任何attribute which contains the specified substring。在您的情况下,任何span元素都具有id属性,其中包含字符串section.
。