gpt4 book ai didi

javascript - getElementsByTagName 问题

转载 作者:行者123 更新时间:2023-12-02 19:50:19 24 4
gpt4 key购买 nike

  1. 我的页面包含许多双击脚本
  2. 我在主体顶部插入了 js 代码(通过 s.src=('parts_async_dev.js')):

    var innerHTML = document.getElementsByTagName('html')[0].innerHTML.toString();
    var regexp = /ad.doubleclick.net/gm;
    var matches = innerHTML.match(regexp);
    alert('found ' + matches.length + ' tags by regexp ' + regexp);
    console.log( innerHTML);

alert 表示匹配仅返回 2 个 ad.doubleclick.net 标记。我首先想到的是,如果代码没有放置在主体的最底部,则无法访问整个主体。但它在 div“interstitial_wrapper”内找到了 2 个标签,该标签位于我的代码之后。

所以我的问题是:

  • 为什么会这样
  • 如何从 body start 访问整个 body(我可能不会使用 body 'onload' 事件。需要尽快使用脚本)

请查看http://wap7.ru/folio/bannerstat/partners/doubleclick2.html并查看查看源代码,因为它太大,无法包含在此处。

最佳答案

您不必绑定(bind)到 onload 事件。只需绑定(bind)到 DOMContentLoaded 事件即可。

由于您已经在页面中包含了 jQuery,因此可以使用 .ready 轻松完成此操作。 :

$(document).ready(function() {
var innerHTML = document.body.innerHTML;
/* If you want to use a RegExp, use the following:
var regexp = /ad\.doubleclick\.net/gi; // Note: escaped dot
var matches = innerHTML.match(regexp);
matches = matches ? matches.length : 0; // matches can be `null`
*/

// This is more effective:
var matches = innerHTML.split('ad.doubleclick.net').length - 1;
alert('Found ' + matches + ' tags.');
console.log( innerHTML );
});

关于javascript - getElementsByTagName 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9376805/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com