[英]Jquery .load() function isn't working on Chrome?
我试图使用Jquery的.load()函数。 在我看来,它不能在Chrome上运行,但可以在Firefox和Safari上运行...
我不确定自己做错了什么? 请帮我....
这是我的代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript" src="js/jquery.min.js"></script>
<link rel="stylesheet" href="css/goldstyle.css" type="text/css" media="all"/>
</head>
<body>
<div id="navcontainer">
<script type="text/javascript">
$(document).ready(function() {
$('#navcontainer').load('nav-menu.html');
});
</script>
</div>
</body>
我发现,如果您直接在浏览器中打开文件,即file:///
,它将无法在Chrome中运行,并且您会看到类似以下内容的内容:
Failed to load resource: Origin null is not allowed by Access-Control-Allow-Origin
您需要设置一个Web服务器,例如WAMP,然后从本地主机运行它
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript" src="js/jquery.min.js"></script>
<link rel="stylesheet" href="css/goldstyle.css" type="text/css" media="all"/>
<script type="text/javascript">
$(document).ready(function() {
$('#navcontainer').load('nav-menu.html');
});
</script>
</head>
<body>
<div id="navcontainer">
</div>
</body>
我更新了您的代码,以便将负载放置在正确的位置,这是将其放置在原来位置的错误做法。
您也不应该使用jQuery Normal,这至少会引起一些问题!
它在Chrome,IE和Firefox上可以正常运行。
您是否尝试过将F12用于开发人员工具?
然后查看控制台中显示了哪些错误?
我遇到了一个类似的问题,发现Chrome(与IE或FF相反)通常需要附加的Ctrl + F5来卸载缓存的内容。
对我来说,我的$().ready
函数似乎不起作用,但是在Ctrl + F5之后它起作用了。
我知道这并不能完全解决问题,但是我是来描述这种行为的-也许其他人也可以。
我遇到了类似的问题,并通过添加setTimeout()
而不是仅在其中添加function()
来解决该问题,它可以正常工作。
<script type="text/javascript" src="jquery-3.3.1.min.js"></script>
<script type="text/javascript">
$(document).ready(setTimeout(function(){
$("#list").load("list.htm", function(){$("#list").hide().slideDown(600);})
},300));
</script>
<script language="javascript">
我以前的代码无法在Chrome浏览器中运行,但可以在Firefox中运行。
$(document).ready(function(){
$("#list").load("list.htm", function(){$("#list").hide().slideDown(600);})
});
希望这可以对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.