我的电脑上有一个离线的 "htm "文件,我用它来测试HTML代码。它就像一个HTML编辑器。它可以编译HTML代码。但我有一个问题。它支持各种CSS和JavaScript,也支持基于JavaScript的库,如jQuery,但不支持事件,如------------。onload, $(document).ready()
我不知道为什么?我尝试了很多关于它的方法,但都无能为力。
所以请看我的编辑器的源码。
<html>
<script type="text/javascript">
function ShowResult()
{
my_window = window.open("about:blank", "mywindow1");
my_window.document.write(x);
if(my_window.document.title=="")
{
my_window.document.title="No title was specified"
}
}
</script>
<body>
<textarea style="height:400px;width:750px;overflow:auto;" onblur="x=this.value">
</textarea><br />
<button onclick="ShowResult()">see result!</button>
</body>
</html>
请告诉我,我做错了什么?为什么我的文件不支持 "onload "事件?
你在一个已经加载的页面的上下文中执行代码。
像jsfiddle这样的系统通过动态生成一个页面并将其加载到iframe中来处理这个问题。
你需要一些服务器端的脚本来做这个。我建议安装一个本地的webserver(比如Wampserver)。
你需要初始化x。
<html>
<script type="text/javascript">
x = "";
function ShowResult()
{
my_window = window.open("about:blank", "mywindow1");
my_window.document.write(x);
if(my_window.document.title=="")
{
my_window.document.title="No title was specified"
}
}
</script>
<body>
<textarea style="height:400px;width:750px;overflow:auto;" onblur="x=this.value">
</textarea><br />
<button onclick="ShowResult()">see result!</button>
</body>
</html>