Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chrome vs Firefox Javascript行为_Javascript_Google Chrome_Firefox_Alert - Fatal编程技术网

Chrome vs Firefox Javascript行为

Chrome vs Firefox Javascript行为,javascript,google-chrome,firefox,alert,Javascript,Google Chrome,Firefox,Alert,这是“数据:”URI,请将其加载到浏览器中 data:text/html,<script>alert("#")</script> data:text/html,警报(“#”) 我会在Chrome中执行alert(),但不会在Firefox中执行。 Firefox删除“#”字符和以下所有字符。 如何使FF发出警报(“#”) Update:我理解“*”片段部分,但问题更像“为什么Chrome忽略了“片段”的情况,并认为它是一个正常的字符,当FF没有?” < P> A >

这是“数据:”URI,请将其加载到浏览器中

data:text/html,<script>alert("#")</script>
data:text/html,警报(“#”)
我会在Chrome中执行alert(),但不会在Firefox中执行。 Firefox删除“#”字符和以下所有字符。 如何使FF发出警报(“#”)


Update:我理解“*”片段部分,但问题更像“为什么Chrome忽略了“片段”的情况,并认为它是一个正常的字符,当FF没有?”

< P> A > <代码> <代码>在URL中有特殊含义(它指示片段部分的开始)。您必须将其编码为
%23
才能将其作为数据包含。

A
#
在URL中具有特殊意义(它指示片段部分的开始)。必须将其编码为
%23
才能将其作为数据包含。

必须对数据URI的数据部分进行编码,不允许将其编码为文字字符。从

数据,用逗号(
)与前面的部分隔开。数据是以字符表示的八位字节序列。数据URI中允许的字符是现代英语字母表中小写和大写字母的ASCII字符,以及阿拉伯数字。由任何其他字符表示的八位字节必须进行百分比编码,如“
%26
”中的“与”(
&
)符号

…引用

因此,您的数据URI应该是:

data:text/html,%3Cscript%3Ealert(%22%23%22)%3C%2Fscript%3E
…可在Chrome和Firefox中使用:


必须对数据URI的数据部分进行编码,不允许将
#
作为文字字符。从

数据,用逗号(
)与前面的部分隔开。数据是以字符表示的八位字节序列。数据URI中允许的字符是现代英语字母表中小写和大写字母的ASCII字符,以及阿拉伯数字。由任何其他字符表示的八位字节必须进行百分比编码,如“
%26
”中的“与”(
&
)符号

…引用

因此,您的数据URI应该是:

data:text/html,%3Cscript%3Ealert(%22%23%22)%3C%2Fscript%3E
…可在Chrome和Firefox中使用: