当通过ajax调用页面时,jQuery不工作
这是当通过ajax调用页面时,jQuery不工作,jquery,ajax,Jquery,Ajax,这是index.html页面 <head> <script src="js/jquery-1.3.js" type="text/javascript"></script> <script src="js/jquery.easing.1.3.js" type="text/javascript"></script> <script src="js/animated-menu.js" type="text
index.html
页面
<head>
<script src="js/jquery-1.3.js" type="text/javascript"></script>
<script src="js/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="js/animated-menu.js" type="text/javascript"></script>
<script src="js/call.js" type="text/javascript"></script>
<script type="text/javascript" src="js/fade.js"></script>
</head>
<body>
<div class="header">
<div class="menu">
<ul>
<li class="green" >
<p><a href="index.html">Home</a></p>
<p class="subtext">The front page</p>
</li>
<li class="yellow" onclick="showHint(1)">
<p><a href="#">About</a></p>
<p class="subtext">More info</p>
</li>
<li class="red" onclick="showHint(2)">
<p><a href="#">Contact</a></p>
<p class="subtext">Get in touch</p>
</li>
<li class="blue">
<p><a href="#">Submit</a></p>
<p class="subtext">Send us your stuff!</p>
</li>
<li class="purple">
<p><a href="#">Terms</a></p>
<p class="subtext">Legal things</p>
</li>
</ul>
</div>
</div>
<div class="content" id="content"></div>
</body>
这是fade.js
文件
$(document).ready(function() {
$("body").css("display", "none");
$("body").fadeIn(2000);
});
最后是ajax调用
var XMLHttpRequestObject;
if(window.XMLHttpRequest)
{
XMLHttpRequestObject=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
XMLHttpRequestObject=new ActiveXObject("Microsoft.XMLHTTP");
}
function showHint(ide) {
if(XMLHttpRequestObject)
{
XMLHttpRequestObject.onreadystatechange=function() {
if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)
{
document.getElementById("content").innerHTML=XMLHttpRequestObject.responseText;
}
}
if(ide=="0")
{
XMLHttpRequestObject.open("GET","index.html",true);
}
else if(ide=="1")
{
XMLHttpRequestObject.open("GET","about_me.htm",true);
}
else if(ide=="2")
{
XMLHttpRequestObject.open("GET","contact.htm",true);
}
XMLHttpRequestObject.send();
}
}
问题是,当我单独呼叫联系人页面时,淡入淡出效果会起作用。但是当我通过AJAX加载
contact.html
时,jQuery效果不起作用。请提供帮助。您还需要在contact.html
中包含所有必要的库,如下所示:
<head>
<script src="js/jquery-1.3.js" type="text/javascript"></script>
<script src="js/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="js/animated-menu.js" type="text/javascript"></script>
<script src="js/call.js" type="text/javascript"></script>
<script type="text/javascript" src="js/fade.js"></script>
</head>
编辑:
首先,您应该学习如何使用jQuery的ajax:,如果可以的话,还应该包括该库的最新版本
第二,我认为您希望在每次ajax调用之后身体上都有淡入效果。在这种情况下,在contact.htm中,您只需要拥有正文中的内容。所有东西都放在一起:
<html>
<head>
<script src="js/jquery-1.3.js" type="text/javascript"></script>
<script src="js/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="js/animated-menu.js" type="text/javascript"></script>
<script type="text/javascript">
var XMLHttpRequestObject;
if(window.XMLHttpRequest)
{
XMLHttpRequestObject=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
XMLHttpRequestObject=new ActiveXObject("Microsoft.XMLHTTP");
}
function showHint(ide) {
if(XMLHttpRequestObject)
{
XMLHttpRequestObject.onreadystatechange=function() {
if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)
{
document.getElementById("content").innerHTML=XMLHttpRequestObject.responseText;
$("body").css("display", "none");
$("body").fadeIn(2000);
}
}
if(ide=="0")
{
XMLHttpRequestObject.open("GET","index.html",true);
}
else if(ide=="1")
{
XMLHttpRequestObject.open("GET","about_me.htm",true);
}
else if(ide=="2")
{
XMLHttpRequestObject.open("GET","contact.htm",true);
}
XMLHttpRequestObject.send();
}
}
</script>
<script type="text/javascript">
$(document).ready(function() {
$("body").css("display", "none");
$("body").fadeIn(2000);
});
</script>
</head>
<body>
<div class="header">
<div class="menu">
<ul>
<li class="green" >
<p><a href="index.html">Home</a></p>
<p class="subtext">The front page</p>
</li>
<li class="yellow" onclick="showHint(1)">
<p><a href="#">About</a></p>
<p class="subtext">More info</p>
</li>
<li class="red" onclick="showHint(2)">
<p><a href="#">Contact</a></p>
<p class="subtext">Get in touch</p>
</li>
<li class="blue">
<p><a href="#">Submit</a></p>
<p class="subtext">Send us your stuff!</p>
</li>
<li class="purple">
<p><a href="#">Terms</a></p>
<p class="subtext">Legal things</p>
</li>
</ul>
</div>
</div>
<div class="content" id="content"></div>
</body>
</html>
var XMLHttpRequestObject;
if(window.XMLHttpRequest)
{
XMLHttpRequestObject=新的XMLHttpRequest();
}
else if(window.ActiveXObject)
{
XMLHttpRequestObject=新的ActiveXObject(“Microsoft.XMLHTTP”);
}
函数showHint(ide){
if(XMLHttpRequestObject)
{
XMLHttpRequestObject.onreadystatechange=函数(){
if(XMLHttpRequestObject.readyState==4&&XMLHttpRequestObject.status==200)
{
document.getElementById(“内容”).innerHTML=XMLHttpRequestObject.responseText;
$(“body”).css(“display”、“none”);
$(“正文”)。fadeIn(2000年);
}
}
如果(ide==“0”)
{
open(“GET”,“index.html”,true);
}
else if(ide==“1”)
{
open(“GET”,“about_me.htm”,true);
}
否则如果(ide==“2”)
{
XMLHttpRequestObject.open(“GET”,“contact.htm”,true);
}
XMLHttpRequestObject.send();
}
}
$(文档).ready(函数(){
$(“body”).css(“display”、“none”);
$(“正文”)。fadeIn(2000年);
});
-
头版
-
更多信息
-
联系
-
将您的资料发送给我们
-
法律事务
您的contact.html:
<p>Rollover a menu item to expand it.</p>
滚动菜单项以将其展开。
我没有看到任何类似于jQuery方法调用的东西。对不起,post Update Now做到了这一点,但太不起作用了。!!实际上,通过ajax加载页面时,不会调用脚本。有什么解决办法吗?编辑了答案。看看这对你是否有效。最重要的部分是在document.getElementById(“content”).innerHTML=XMLHttpRequestObject.responseText之后调用主体的fadein函数代码>Thx很多人,这是工作。但是,如果我希望在每次ajax调用之后执行一个外部jquery脚本呢?请帮助:)您将该脚本放在index.html的头部,并将要添加的任何函数放在放置fadein函数的同一位置,如果(XMLHttpRequestObject.readyState==4&&XMLHttpRequestObject.status==200){}
<p>Rollover a menu item to expand it.</p>