【发布时间】:2012-01-31 14:29:44
【问题描述】:
我收到此错误 Uncaught SyntaxError: Uncaught SyntaxError: Unexpected token from chrome,但在 FireFox 上一切正常。 我发现了很多类似的帖子,但没有解决方案。
所以我想知道是否有办法在构建后将第二个页面发送到浏览器,并带有它自己的标题。 想法来了,当我看到 Firefox 将我在下面的函数中回显的内容放在 html 结束标记 之后,而 Chrome 将它放在结束标记之前。
基本上,我喜欢按这个顺序发送:
header('Content-Type: text/html; charset= utf-8');
<html></html>
header('Content-Type: text/javascript; charset= utf-8');
<script></script>
这是我的 php 脚本,我想取消注释标头代码并将其独立于 html 页面发送。
public static function jsShow($html)
{
//header('Content-Type: text/javascript; charset= utf-8');
echo "
<script type=\"text/javascript\">
var e = document.getElementById('message');
e.innerHTML = $html ;
e.style.display = 'block';
</script>";
}
这是页面在 Firefox 中的样子,并且有效:
</body>
</html>
<script type="text/javascript">
var e = document.getElementById('message');
e.innerHTML = <ul style="list-style: none; margin: 0; padding: 0;">
<li style="background-color: #0000FF; margin: 0;"><img src="/asset/icon/info.gif" alt="Info: " /> working</li>
<li style="background-color: #008000; margin: 0;"><img src="/asset/icon/success.gif" alt="Success: " /> Got it</li>
</ul>
;
e.style.display = 'block';
</script>
我想我也许可以使用 ob_start() 和 ob_end_flush(),但你不能控制只有内容的标题。
【问题讨论】:
标签: php javascript google-chrome syntax-error