一个 href=mailto 是代码执行的结束吗?
Is an href=mailto the end of code execution?
我正在修改一个旧网站,运行 遇到了 javascript 的问题,我希望有人能帮我解释一下。在这个网站中,有一个location.href="mailto:..."
声明。在 mailto 之后,有一些代码预计 运行。在本网站的旧版本中,此代码会 运行 正确,但在我的版本中,代码似乎在 mailto.这句话有什么我不明白的地方吗?这是正常现象还是意味着我的代码有问题?
网站在php。这是一些示例代码。
<script type="text/javascript">
location.href="mailto:test@example.com";
document.write("echo")
</script>
echo 语句不会 运行,php 中结束脚本标记后的任何内容也不会执行。例如:<?php echo "hi"; ?>
而不是 location.href
,输入
window.open('mailto:test@example.com', '_blank');
(最终结果:<script type="text/javascript">window.open('mailto:test@example.com', '_blank'_;document.write("echo")</script>
)
这会在新选项卡中打开 mailto,并允许您的其余代码继续 运行。
设置 location.href
可能 停止所有 JavaScript 和 HTML 处理,这取决于浏览器(如果所有主流浏览器都以相同的方式处理)。但是,它永远不会停止PHP执行。
可能很难说您的 PHP 保持 运行 超过了您的 JavaScript 和 HTML 停止的点,但您可以通过写信至一个文件:你的 PHP 脚本在你的服务器上创建一个文件没有问题(只要它有正确的文件权限),尽管它已经达到浏览器忽略它的输出的程度。
我正在修改一个旧网站,运行 遇到了 javascript 的问题,我希望有人能帮我解释一下。在这个网站中,有一个location.href="mailto:..."
声明。在 mailto 之后,有一些代码预计 运行。在本网站的旧版本中,此代码会 运行 正确,但在我的版本中,代码似乎在 mailto.这句话有什么我不明白的地方吗?这是正常现象还是意味着我的代码有问题?
网站在php。这是一些示例代码。
<script type="text/javascript">
location.href="mailto:test@example.com";
document.write("echo")
</script>
echo 语句不会 运行,php 中结束脚本标记后的任何内容也不会执行。例如:<?php echo "hi"; ?>
而不是 location.href
,输入
window.open('mailto:test@example.com', '_blank');
(最终结果:<script type="text/javascript">window.open('mailto:test@example.com', '_blank'_;document.write("echo")</script>
)
这会在新选项卡中打开 mailto,并允许您的其余代码继续 运行。
设置 location.href
可能 停止所有 JavaScript 和 HTML 处理,这取决于浏览器(如果所有主流浏览器都以相同的方式处理)。但是,它永远不会停止PHP执行。
可能很难说您的 PHP 保持 运行 超过了您的 JavaScript 和 HTML 停止的点,但您可以通过写信至一个文件:你的 PHP 脚本在你的服务器上创建一个文件没有问题(只要它有正确的文件权限),尽管它已经达到浏览器忽略它的输出的程度。