为了账号安全,请及时绑定邮箱和手机立即绑定

为什么alert放在document.write后边不能弹出来?

如题,

function show(){

//在页面中显示文字
document.write("系好安全带,准备启航--目标js");
//页面中弹出提示框
alert("准备好了吗?");

}

为什么alert放在document.write后边不能弹出来?

正在回答

6 回答

我觉得是优先级的问题,在document.write()读取后,把后面所有的当作文档读取了,所以后面的应该是读不出来的


0 回复 有任何疑惑可以回复我~
#1

甜瓜爱上土豆 提问者

那岂不是document之后都不可以执行了?
2016-03-09 回复 有任何疑惑可以回复我~

我的没有写在函数里,是直接写在<script>标签里,但是执行顺序是先执行弹窗后显示write内容,如果body里有其它文字,直接就是弹窗和body的内容,write都不实现了,求教怎么回事。

<script type="text/javascript">//多行注释  /*我是多行注释!  我需要隐藏,  否则会报错哦!*///在页面中显示文字    document.write("<p>系好安全带,准备启航--目标JS</p>");//页面中弹出提示框    alert("准备好了,启航吧!");//单行注释   //我是单行注释,我也要隐藏起来!</script></head><body>    <h5>wo xihuan ni</h5></body>


0 回复 有任何疑惑可以回复我~

你没有调用啊,调用了才能执行。并不是不会弹出来

0 回复 有任何疑惑可以回复我~

文档流覆盖,document.write("系好安全带,准备启航--目标js")是把整个html文档清空并写入内容,alert()的内容被覆盖掉了,你可以试下在body里面写东西,一样会被覆盖掉,这是一样的道理。

3 回复 有任何疑惑可以回复我~

function show(){
document.write("系好安全带,准备启航--目标js");
    alert("准备好了吗");
}

show();//函数这有再调用的时候才会执行,加这个试试。

0 回复 有任何疑惑可以回复我~

要调用该函数才能执行函数里面的代码

1 回复 有任何疑惑可以回复我~
#1

甜瓜爱上土豆 提问者

谢谢回答,但是我的意思是调用之后,只会显示document.write的内容,但是不会弹出alert对话框,不能够执行。但是如果alert放在document前面的话,就可以全部执行。所以这里不太明白。
2016-03-09 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么alert放在document.write后边不能弹出来?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信