2012-03-28 146 views
0

我目前正在一個需要ajax加載內部頁面的網站,但是某些組頁面需要背景更改以及容器寬度更改。ajax條件if語句加載頁面

有無論如何我可以使用條件if語句來改變某些元素上的class/css?如果是這樣,我會怎麼做呢?

對不起,忘了說,有條件的網頁網址。

所以,如果URL = innerpage.html變化類的

這一切工作的方式:

$('nav li a').click(function(){ 

    var toLoad = $(this).attr('href'); 
    hideView() 
    $('#ajax-page').hide('fast', loadContent); 
    $('#load').remove(); 
    $('#container').append('<span id="load">LOADING...</span>'); 
    $('#load').fadeIn('normal'); 
    window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5); 
    function hideView() { 
     $('#container').find('.view').fadeOut('fast'); 
    } 
    function loadContent() { 
     $('#ajax-page').load(toLoad,'',showNewContent()) 
    } 
    function showNewContent() { 
     $('#ajax-page').show('normal',hideLoader()); 
    } 
    function hideLoader() { 
     $('#load').fadeOut('normal'); 
    } 
    return false; 

}); 
+0

是的,但有條件嗎?頁面的網址? – 2012-03-28 16:53:55

+0

我們可以看到你的代碼的例子嗎? – Ryan 2012-03-28 16:53:57

+0

我認爲你的問題應該更具體。我會說... ...課程你可以使用條件if語句來改變東西 – 2012-03-28 16:54:04

回答

0

您可以使用jQuery .addClass().removeClass()功能從元素添加和刪除類。還可以使用jQuery .css('attr','value')來更改該元素上的css。

0

如果背景和寬度的數量非常有限,您可以在CSS中準備類並通過Ajax傳遞所需的類。

如果你有很多變化,並且想做一些預加載/動畫,那麼你應該通過數據參數從服務器傳遞所有相關的原始數據(背景,寬度,內容)作爲Json對象成功響應,然後測試它們的相關性,並將其應用/不應用於.html()和.attr()。

+0

更新了問題 – meestormac 2012-03-28 17:37:04