在ubinder (adbrite script)中转义&号
escaping ampersands in UIBinder (adbrite script)
我需要将以下脚本集成到UIBinder的div中:
<!-- Begin: adBrite, Generated: 2011-04-14 8:40:27 -->
<script type="text/javascript">
var AdBrite_Title_Color = '66B5FF';
var AdBrite_Text_Color = '000000';
var AdBrite_Background_Color = 'FFFFFF';
var AdBrite_Border_Color = 'CCCCCC';
var AdBrite_URL_Color = '008000';
try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}
</script>
<span style="white-space:nowrap;"><script type="text/javascript">document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=123&zs=123&ifr='+AdBrite_Iframe+'&ref='+AdBrite_Referrer+'" type="text/javascript">');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));</script>
<a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=123&afsid=1"><img src="http://files.adbrite.com/mb/images/adbrite-your-ad-here-leaderboard.gif" style="background-color:#CCCCCC;border:none;padding:0;margin:0;" alt="Your Ad Here" width="14" height="90" border="0" /></a></span>
<!-- End: adBrite -->
GWT编译器抱怨与符号,所以我将它们更改为&
。
我还小心地在文件的顶部声明了以下内容,以便能够正确解析&实体:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
这至少允许我编译代码,但结果页面呈现&
而不是&
,这当然破坏了脚本。
如何正确转义&号以使脚本正常运行?是否有一种方法来声明这个脚本在我的加载器html/jsp,并有它呈现成我选择的一个div ?我在Adbrite的网站上找不到太多的文档。
最后,Adbrite真的有必要试图隐藏脚本来自远程站点的String.fromCharCode
胡说八道的事实吗?据推测,这样做是为了防止某种XSS过滤。
谢谢
将Javascript代码放在HTML注释之间。将&
替换为&
下面是修改后的代码:
<!-- Begin: adBrite, Generated: 2011-04-14 8:40:27 -->
<script type="text/javascript"><!--
var AdBrite_Title_Color = '66B5FF';
var AdBrite_Text_Color = '000000';
var AdBrite_Background_Color = 'FFFFFF';
var AdBrite_Border_Color = 'CCCCCC';
var AdBrite_URL_Color = '008000';
try{var AdBrite_Iframe=window.top!=window.self?2:1;var
AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var
AdBrite_Iframe='';var AdBrite_Referrer='';}
--></script>
<span style="white-space:nowrap;">
<script type="text/javascript"><!-- document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=123&zs=123&ifr='+AdBrite_Iframe+'&ref='+AdBrite_Referrer+'" type="text/javascript">');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62)); --></script>
<a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=123&afsid=1"><img src="http://files.adbrite.com/mb/images/adbrite-your-ad-here-leaderboard.gif" style="background-color:#CCCCCC;border:none;padding:0;margin:0;" alt="Your Ad Here" width="14" height="90" border="0" /></a></span>
<!-- End: adBrite -->
相关文章:
- 在JavaScript中输出转义字符
- 转义符不能与innerHTML一起使用
- Rails 3.2 js.erb文件转义js
- 转义在jsp's脚本
- html文件中的script标记根本不起作用
- 用javascript将script元素附加到头部;铬不能工作
- 使用Jinja2的JavaScript转义字符串
- 将c#视图模型转换为javascript模型时转义HTML标记
- script标记如何解析node_modules的路径
- Rails:如何在浏览器中显示动态html内容,而不会对其进行转义,也不会引起XSS攻击
- 删除单引号字符转义
- 在<script src=“"></脚本>标签
- 如何使用javascript/jquery更改转义键的功能
- Google Script HtmlService,通过多个选项卡复制URL变量
- 包含转义符号的正则表达式
- 在RegEx(JavaScript)中正确转义变量
- 为什么firefox开发人员控制台引用script.js
- 等效于<script src=“;something1.json”></脚本>
- 在ubinder (adbrite script)中转义&号
- 在Google Apps Script中转义正则表达式