jQuery .text() 抓取与条件匹配的文本
一旦用户触发操作,h1.text() 必须与 h2.text() 相同。
$('h1').text($('h2').text());
问题是 h2 内部有一些跨度和隐藏跨度。例如:
<h2>Countries: <span class="ec">Ecuador</span> <span class="cl hidden">Chile</span></h2>
h1 需要是:
Countries: Ecuador
Chile 应该被排除在外,因为它位于具有隐藏类的跨度内。我知道这是可以通过某种方式实现的。有什么想法吗?
Once the user triggers an action, h1.text() has to be the same as h2.text().
$('h1').text($('h2').text());
The problem is that h2 has some spans and hidden spans inside. E.g.:
<h2>Countries: <span class="ec">Ecuador</span> <span class="cl hidden">Chile</span></h2>
h1 needs to be:
Countries: Ecuador
Chile should be left out because it is inside a span with the hidden class. I know this can be achieved with conditions somehow. Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
克隆
h2
元素(这样我们就不会弄乱原始元素) ,然后 查找 和 删除所有span.hidden
元素,然后获取文本(使用 end 去将 jquery 链从删除的隐藏跨度备份回 h2) 并将其应用于h1
:jsFiddle: http://jsfiddle.net/mhUEr/1/
Clone the
h2
element (so we don't mess up the original), then find and remove all thespan.hidden
elements, then get the text back (using end to go back up the jquery chain from the removed hidden spans back to the h2) and apply it toh1
:jsFiddle: http://jsfiddle.net/mhUEr/1/