这是我的JavaScript代码。showcode.php
<script type="text/javascript" charset="utf-8">(function(){
var a="publisher-121";
var n="top";
var z="45";
var h="125";
var w="125";
var nofollow="no";
var e=document.getElementsByTagName("script")[0];
var d=document.createElement("script");
d.src=('https:'==document.location.protocol ? 'https://' : 'http://') +"server.com/adcode.php?a="+a+"&h="+h+"&w="+w+"&n="+n+"&z="+z;
d.async = true;
d.defer = true;
d.type="text/javascript";
e.parentNode.insertBefore(d,e);
})();</script>如您所见,URL指向http://server.com/adcode.php?a=publisher-121&n=top&z=45&w=125&h=125
此页面的所有内容如下:(adcode.php)
<?php echo "document.write('<div id=\"ha_adblock ".$a."_".$z."\" class=\"ha_adblock".$a."_".$z."\" style=\"width:".$h."px;height:".$w."px;background:#eee;text-align:center;cursor:pointer\" onClick=\"window.location.href=\'click.php?a=".$a."&z=".$z."&g=http://refererurl.com/;\'return false;\"><a href=\"http://refererurl.com/\" onClick=\"window.location.href=\'click.php?a=".$a."&z=".$z."&g=http://refererurl.com/;\'return false;\" style=\"color:#333;font-weight:bold\">advert</a></div>');"; ?>然而-这一页只是显示为空白。Firebug显示,我的代码已经加载并执行良好,没有任何错误。如果我只是在脚本标记中吐出上面的代码(document.write)就行了-- PHP似乎不起作用?
发布于 2011-12-28 23:05:33
不能在包含在document.write或async属性中的脚本中使用async。试图这样做是不合逻辑的。
此外,您还需要转义字符串中的引号-任何带有颜色编码的编辑器都将显示属性内容不包含在字符串中,除非您在字符串中的引号之前放置了一个\。
发布于 2011-12-28 23:09:25
您没有正确地转义PHP文件中的双引号(")。它们的前面应该是反斜杠(\)字符(参见这里)。PHP脚本应该是:
<?php echo "document.write('<div id=\"adblock\" class=\"ha_adblock121_45\" style=\"width:125px;height:125px;background:#eee;text-align:center;cursor:pointer\" onClick=\"window.location.href=click.php?g=http://refererurl.com/;return false;\"><a href=\"http://refererurl.com/\" onClick=\"window.location.href=click.php?g=http://refererurl.com/;return false;\" style=\"color:#333;font-weight:bold\">advert</a></div>');"; ?>发布于 2011-12-29 07:20:50
< ?php "< script>(函数(){document.write(‘< div id=\"adblock\“class=\"ha_adblock121_45\”ha_adblock121_45\“false;\">advert< /a>< /div>');})();< /script>";?>
调用自动函数,该函数将在页面加载时执行.:-)
https://stackoverflow.com/questions/8661999
复制相似问题