jQuery kwanan wuri - hakika na .contents()
Dawo
ya iya gudan gaskiya dominan kwarin juyayon dominan tekun da ya kama juyayon gaskiya na gaskiya tare da tago na bold.
$("p").contents().filter(function(){ return this.nodeType != 1; }).wrap("<b/>");
Kira da Yawon Nata
Hakika na .contents() kuma ya gudan gaskiya dominan kwarin juyayon dominan kwarin gaskiya, ciki har da abin da yake cikin tekun da kuma abin da yake cikin gaskiya.
Lambar yancin
.contents()
Tsaftarin
Kwam gaskiya dominan jQuery na ya kula ga tattuwan dominan DOM, ka kuma ya ba wa kama juyayon gaskiya dominan kwarin juyayon dominan DOM tare da kuma kama juyayon gaskiya na gaskiya. .contents() da .children() 方法类似,不同的是前者在结果 jQuery 对象中包含了文本节点以及 HTML 元素。
.contents() 方法也可以用于获得 iframe 的内容文档,前提是该 iframe 与主页面在同一个域。
请思考下面这个带有一些文本节点的 <div>,每个节点被两个折行元素 (<br />) 分隔:
<div class="container"> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. <br /><br /> Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. <br /> <br /> Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. </div>
我们可以使用 .contents() 方法来把文本块转换为形式良好的段落:
$('.container').contents().filter(function() { return this.nodeType == 3; ) .wrap('<p></p>') .end() .filter('br') .remove();
这段代码首先会接收 <div class="container"> 的内容,然后滤过其文本节点,将文本节点封装入段落标签中。这是通过测试元素的 .nodeType 属性实现的。该属性存有指示节点类型的数字代码;文本节点使用代码 3。内容会被再次过滤,这次针对 <br /> 元素,这些元素会被移除。