【问题标题】:Short jQuery works, everything else goes blank简短的 jQuery 工作,其他一切都变成空白
【发布时间】:2015-04-29 13:42:25
【问题描述】:

我正在尝试根据屏幕尺寸显示“测试”:

<script type="text/javascript">
jQuery(function( $ ){
if($(window).width() >= 960){
document.write('Test');
}
});
</script>

由于 jQuery 冲突,我不得不将脚本放在 "jQuery(funcion..." 中

所以脚本有效。但是,整个站点正常加载,然后在脚本执行后变为空白,屏幕上仅显示“测试”。现在有人为什么吗?

【问题讨论】:

  • 因为document.write('Test');。您正在用文本 Test 替换整个文档

标签: javascript jquery


【解决方案1】:

一旦文档就绪触发,如果您再次使用document.write(),文档将被重写,如果您想附加文本,您可以使用 append()

注意:当 document.write 写入文档流时,调用 document.write 在已关闭(已加载)的文档上自动调用 document.open which will clear the document.

jQuery(function( $ ){
if($(window).width() >= 960){
$('body').append('test')
}
});

【讨论】:

    【解决方案2】:

    文档加载完成后,您将无法使用 document.write。如果这样做,浏览器将打开一个替换当前文档的新文档。

    JavaScript Document.Write Replaces All Body Content When Using AJAX

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-12
      • 2021-10-17
      • 2012-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-08
      • 1970-01-01
      相关资源
      最近更新 更多