【问题标题】:Grab text on page and insert it into variable jquery抓取页面上的文本并将其插入变量 jquery
【发布时间】:2013-05-22 19:47:15
【问题描述】:

我想使用 jquery 将下面 HTML 中的文本定位在结束 </span> 标记和结束 </h2> 标记之间,并将文本值(在本例中为“Hello World”)插入我的 @987654323 @流量变量。

我不知道从哪里开始解决这个问题?请让我知道您需要哪些信息来提供帮助

这是我的 HTML:

<div class="portletTitleWrap">
    <div class="portletTitle">
        <div class="title">
            <h2><span class="siteTitle">Homepage</span> Hello World</h2>
        </div>
    </div>
</div>

这是我想用 Hello World 动态填充 s.pageName="" 的 javascript sn-p。这个值会随着页面的变化而变化,这就是为什么它需要是动态的。

<script language="JavaScript" type="text/javascript">
s.pageName = ""
var s_code = s.t();
if (s_code) document.write(s_code)
</script>

【问题讨论】:

    标签: jquery


    【解决方案1】:

    您可以选择 span 元素并使用nextSibling 属性:

    s.pageName = $('h2 span.siteTitle').get(0).nextSibling.nodeValue; 
    

    http://jsfiddle.net/pCd6T/

    或者:

    s.pageName = $('h2').contents().filter(function() {
         return this.nodeType === 3;
    }).text();
    

    【讨论】:

      【解决方案2】:

      你可以试试这个

      var x = $('h2').contents().filter(function() {
          return this.nodeType !== 1
      }).text();
      

      Check Fiddle

      【讨论】:

      • 感谢您的帮助!这更符合我的需要,因为我可以使用 s.pageName = x 将文本节点插入到 pageName 变量中。
      • @Evan.. 很高兴能帮上忙 :)
      【解决方案3】:
      s.pageName = $('.siteTitle').parent().contents()[1];
      

      演示--&gt;http://jsfiddle.net/47hem/1/

      【讨论】:

        猜你喜欢
        • 2023-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-29
        • 1970-01-01
        • 2010-11-16
        • 1970-01-01
        相关资源
        最近更新 更多