html页面加载JS文件经常错误

JavaScript017

html页面加载JS文件经常错误,第1张

三种异步执行加载Js 脚本的方法。

1、直接document.write;

<script language="javascript">

document.write("<script src='test.js'><\/script>")

</script>

2、动态改变已有script的src 属性;

<script src='' id="s1"></script>

<script language="javascript">

s1.src="test.js"

</script>

3、动态创建 script元素;

<script>

var oHead = document.getElementsByTagName('HEAD').item(0)

var oScript= document.createElement("script")

oScript.type = "text/javascript"

oScript.src="test.js"

oHead.appendChild( oScript)

</script>

注 :

这三种方法都是异步的,所以在采用这类方法动态加载Js 的同时,主界面的Js脚本是继续执行的,所以可能出现通过异步加载的Js代码得不到预期的效果的情况。这时候可以考虑采用Ajax加载Js的方法。

大概原理 :用XMLHTTP取得要脚本的内容,再创建 Script 对象。另外注意编码的保持一致。因为服务器与XML使用UTF8编码传送数据。

你加载外部的js文件后,可以查看源码,点击js文件是否能打开,如果没有就是,路径错误,没有加载成功,如果有的话,<html>

<head></head>

<script type="text/javascript" src="外部.js"></script>

<body>

可以试试看。

WebBrowser控件禁用超链接转向、脚本错误提示、默认右键菜单和快捷键

从 VS2005开始,VS自带的 WebBrowser控件,就已经相当友好了,可控性非常高了。Winform 结合 WebBrowser 做UI开发,也是一种非常流畅的模式了, 微软的VS IDE 系列的安装程序, 基本都是这个模式的

禁用错误脚本提示

将 WebBrowser控件的 ScriptErrorsSuppressed 设为 true

禁用右键菜单

将 WebBrowser 的 IsWebBrowserContextMenuEnabled 设为 false

禁用快捷键

将 WebBrowser 的 WebBrowserShortcutsEnabled 设为 false

禁用超链接

超链接分为两种,一种是 当前窗口直接转向, 一种是 在新窗口中打开

当然窗口直接转向:

将 WebBrowser 的 AllowNavigation 设为 false

在新窗口中打开:

禁用新窗口打开,需要处理 WebBrowser 的 NewWindow 事件

private void webBrowser1_NewWindow(object sender, CancelEventArgs e)

{

e.Cancel = true

}

做完上面的工作,基本就完工了,还有最后一点需要注意,那就是 Drag-And-Drop

记得将 WebBrowser 的 AllowWebBrowserDrop 设为 false