ajax条件if语句加载页面

时间:2012-03-28 16:51:13

标签: jquery html5

我目前正在开发一个需要ajax来加载内页的网站,但是某些页面组需要更改背景以及更改容器宽度。

无论如何我可以使用条件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;

});

2 个答案:

答案 0 :(得分:0)

您可以使用jQuery .addClass().removeClass()函数来添加和删除元素中的类。还可以使用jQuery .css('attr','value')来更改该元素的css。

答案 1 :(得分:0)

如果背景和宽度的数量非常有限,您可以在CSS中准备类并通过Ajax传递所需的类。

如果你有很多变化,并且想做一些预加载/动画,那么你应该通过成功的数据参数从服务器传递所有相关的原始数据(背景,宽度,内容)作为Json对象响应,然后测试它们的相关性,并使用.html()和.attr()来应用/不应用它们。