Использование Jquery после загрузки

0

Я не могу использовать функции jquery после того, как я использую функцию partials -.load(). Я пробовал функции, такие как.val() и изменение фонового изображения, и ничего не происходит. Я думаю, что у него есть что-то с.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
    пожалуйста, отправьте полный код, включая CSS.
  • 0
    Используйте атрибут onload для тега body ...
Теги:

1 ответ

2
Лучший ответ

Вы должны позвонить rentPics() после того, как ваша страница загрузится в DOM.

Что-то вроде того:

$.load("url_to_your_page_containing_carNavigation", function () {
   renderPics();
});

Второй аргумент (функция...) будет вызываться только после завершения загрузки страницы и, следовательно, когда #d1 будет доступно в дереве DOM.

Подробнее см. Официальную документацию в $.load.

  • 0
    Просто работал, не могу дать вам положительный, так как я новичок, но надеюсь, что другие будут :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню