我有一个3帧的HTA,整体看起来像这样:
<html>
<head>
<script type="text/javascript">
function f(){
frames["toolbar"].document.write("Toolbar");
frames["statusbar"].document.write("Status bar");
}
</script>
<frameset rows="65,*,19" onload="f()">
<frame src="about:blank" name="toolbar" application="yes"/>
<frame src="url.html" name="main" application="yes"/>
<frame src="about:blank" name="statusbar" application="yes"/>
</frameset>
</html>
注意:工具栏和状态栏框架的内容比此处指定的内容更复杂。
请注意,使用JavaScript定义了两个框架,但没有真正的URL。
由于这个HTA是瑞典语,我需要使用瑞典特殊字母å,ä和ö,例如alert("Du är inte uppkopplad")
。问题是在工具栏框架和状态栏框架中,内容已在JavaScript中定义,此警报框如下所示:
它用工具栏框架和状态栏框架中的丑陋方块替换ä,但不替换主框架(具有真实URL)。我该如何解决这个问题?
答案 0 :(得分:0)
如果我在父HTA中创建一个变量,它的值为ä
,就可以了。
主要HTA:
<html>
<head>
<script type="text/javascript">
function f(){
frames["toolbar"].document.write("<script type='text/javascript' src='script.js'><\/script>");
frames["statusbar"].document.write("Status bar");
}
var a = "ä"
</script>
<frameset rows="65,*,19" onload="f()">
<frame src="about:blank" name="toolbar" application="yes"/>
<frame src="url.html" name="main" application="yes"/>
<frame src="about:blank" name="statusbar" application="yes"/>
</frameset>
</html>
的script.js:
alert("Du " + parent.a + "r inte uppkopplad");
感谢t.niese在评论中给我这个想法。