获取生成的HTML容器内容的长度

时间:2019-08-03 14:19:24

标签: jquery html

我正在尝试获取动态接收HTML数据的HTML容器内容长度。但这不起作用,我得到了对象。

<script>
    $(document).ready(function (e) {
            var adsense_box_len = $('.container').on('ready', '.adsense-box', function(e) {
                return $(this)[0].length();
            });
            console.log(adsense_box_len);
        });
</script>
<script>
    $(document).ready(function(e) {
            $('.adsense-box').html('This is html dynamic generated');
        });
</script>
<div class="container">
    <div class="adsense-box">

    </div>
</div>

1 个答案:

答案 0 :(得分:1)

尚不清楚您的用例是什么,但是元素没有就绪事件,只有<iframe><img>之类的几个元素具有加载事件

如果您需要监视第三方内容,请使用MutationObserver或间隔计时器。


如果这是用于修改自己的内容,则可以创建一个自定义事件监听器,并在进行修改时触发

// custom event listener
$('.adsense-box').on('content-changed', function(e) {
  console.log('content-changed, len=', $(this).contents().length)
});

// modify content and trigger custom event
$('.adsense-box').html('This is html dynamic generated').trigger('content-changed');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
  <div class="adsense-box"></div>
</div>