78 javascript jquery internet-explorer-8
我试图让我的jQuery函数在IE8上工作.我正在从Google的服务器加载库(http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js).
将$(function(){})永远不会被调用.相反,我得到一个错误Object expected.我打开了开发人员并typeof $在控制台中运行,它就像是undefined.
我试过去其他我知道使用jQuery(jquery.com)的网站,那些都有用,有什么我可能会在这里缺少的吗?
小智 42
在定义变量之前,在变量之前写下"var".IE8在没有"var"时死亡.
小智 39
更正:
检查您的脚本包含标记,是否正在使用
type="application/javascript" src="/path/to/jquery"
Run Code Online (Sandbox Code Playgroud)
改成
type="text/javascript" src="/path/to/jquery"
Run Code Online (Sandbox Code Playgroud)
Jef*_*ser 38
我遇到了类似的问题.在IE7,Firefox和IE8中运行的东西在IE7兼容模式下运行; 但不是'正常'的IE8.我的解决方案是将此代码放在标题中
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
Run Code Online (Sandbox Code Playgroud)
至于为什么jquery不能在IE8中工作,我不清楚.
小智 12
解决方案是升级到最新版本的jQuery.我有完全相同的问题,并升级到1.4.2,它在IE8中再次正常工作.
似乎完全向后兼容我所做的所有jQuery 1.3.2的东西,所以没有投诉!
小智 10
我遇到了这个问题并尝试了这里提到的解决方案但没有成功.
最后,我意识到我正在使用http URL嵌入脚本的页面链接到脚本的Google CDN版本https page.
这导致IE无法加载jquery(它会提示用户是否只想加载安全内容).更改Google CDN URL以使用https方案为我解决了问题.
有些人在这篇文章上磕磕绊绊可能会在jquery和IE8中遇到这个问题,因为他们正在使用> = jQuery v2.使用此代码:
<!--[if lt IE 9]>
<script src="jquery-1.9.0.js"></script>
<![endif]-->
<!--[if gte IE 9]><!-->
<script src="jquery-2.0.0.js"></script>
<!--<![endif]-->
Run Code Online (Sandbox Code Playgroud)
jQuery没有加载,这可能不是特定于IE8.检查jQuery包含的路径.声明.或者更好的是,将以下内容用于CDN:
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js">
</script>
Run Code Online (Sandbox Code Playgroud)
如果您在站点上使用HTTPS,则需要从Googles https服务器加载jQuery库.试试这个:https: //ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js (或最新的https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/ jquery.min.js)
我是通过固定创建的模板人还有谁忘了,包括文档类型.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)
如果你没有声明doctype IE8在Quirks模式下做了奇怪的事情.
| 归档时间: |
|
| 查看次数: |
268469 次 |
| 最近记录: |