在使用partials - .load()函数后,我无法使用jquery函数。 我尝试过.val()和background-image更改等功能,没有任何反应。 我想它与.load()有关,因为我找不到任何其他原因...... 也许我必须使用live func或者其他东西...... 这是我在主页上的主要div,当我在我的网站上导航时,我在其中加载:
<div id="mainContent">
</div>
这是我加载到mainContent中的另一个页面:
<div id="carNavigation" onload="rentPics()">
<div class="carDivs" id="d1"></div>
<div class="carDivs" id="d2"></div>
<br>
<div class="carDivs" id="d3"></div>
<div class="carDivs" id="d4"></div>
<div class="carHeads" id="mazHead">Mazda</div>
<div class="carHeads" id="toyHead">Toyota</div>
<div class="carHeads" id="porHead">Porsche</div>
<div class="carHeads" id="infHead">Infinity</div>
</div>
那就是我的js代码:
$(document).ready(function() {
$('#mainContent').css('background-image', 'url(wood.jpg)');
});
function loadPage(str)
{
if (str=="Aboutus")
{
$('#mainContent').load('aboutus.html');
$('#mainContent').css('background-image', 'url(familycar.png)');
}
if (str=="rentcar")
{
$('#mainContent').load('rentCar.html');
$('#mainContent').css('background-image', 'url(wood.jpg)');
}
if (str=="registration")
{
$('#mainContent').load('registration.html');
}
}
function rentPics()
{
$('#d1').css('background-image','url(familycar.png)');
}
CSS代码:
/* Rent Car Page Css*/
.carDivs
{
border: 1px solid black;
float:right;
width:200px;
height:200px;
border-radius: 65px;
box-shadow: 0px 0px 15px 15px #FFFFFF;
}
#d1 ,#d2
{
margin-left: 100px;
margin-right: 155px;
margin-top: -120px;
}
#d3, #d4
{
margin-top: 112px;
margin-left: 100px;
margin-right: 155px;
}
#mazHead
{
margin-left: 235px;
}
#toyHead
{
margin-left: 683px;
margin-top: -26px;
}
#porHead
{
margin-top: 269px;
margin-right: 87px;
margin-left: 217px;
}
#infHead
{
margin-top: 268px;
margin-left: 260px;
}
.carHeads
{
display:inline-block;
font-family: Copperplate, "Copperplate Gothic Light", fantasy;
font-size: 26px;
vertical-align:top
}
答案 0 :(得分:2)
您的“页面”加载到DOM后,您必须致电rentPics()
。
类似的东西:
$.load("url_to_your_page_containing_carNavigation", function () {
renderPics();
});
第二个参数(函数...)仅在页面加载完成时调用,因此,当#d1
在DOM树中可用时。
有关详细信息,请参阅官方$.load
documentation。