Jquery 如何将页面(主体)的颜色设置为使用AJAX加载的元素的可变颜色?

Jquery 如何将页面(主体)的颜色设置为使用AJAX加载的元素的可变颜色?,jquery,css,ajax,Jquery,Css,Ajax,我想将容器的背景色同步到其子容器。谢谢 这是我试过的,不起作用 <script> $(document).ready(function() { var color = $("section").css( "background-color" ); $('body').css("background-color", color); }); </script> $(文档).ready(函数(){ var color=$(“部分”).css(“背景色”); $('bod

我想将容器的背景色同步到其子容器。谢谢

这是我试过的,不起作用

<script>
$(document).ready(function() {
var color = $("section").css( "background-color" );
  $('body').css("background-color", color);
});
</script>

$(文档).ready(函数(){
var color=$(“部分”).css(“背景色”);
$('body').css(“背景色”,颜色);
});
以下是我的Jquery AJAX:

<script type="text/javascript">
function getPage(id) {
$('#output').html('<img class="loader" src="/assets/img/loader.gif" />');
    jQuery.ajax({
        url: "get_page.php",
        data:'id='+id,
        type: "POST",
        ;}
    });
}
getPage(1);
</script>

函数getPage(id){
$('#output').html('');
jQuery.ajax({
url:“get_page.php”,
数据:'id='+id,
类型:“POST”,
;}
});
}
第(1)页;
还有我的html

<body>
<div id="output">
    <section style=";">
        <p>Bla bla bla</p>
    </section>    
</div>
</body>

呜呜呜呜

以及Shomz答案中的有效解决方案!>

<script type="text/javascript">
$(document).ready(function() {
    updateColor();
});

function getPage(id) {
$('#output').html('<img class="loader" src="/assets/img/loader.gif" />');
    jQuery.ajax({
        url: "get_page.php",
        data:'id='+id,
        type: "POST",
        success:function(data){$('#output').html(data);updateColor();}
    });
}
function updateColor(){
    var color = $("section").css( "background-color" );
    $('body').css("background-color", color);
}
getPage(1);
</script>

$(文档).ready(函数(){
updateColor();
});
函数getPage(id){
$('#output').html('');
jQuery.ajax({
url:“get_page.php”,
数据:'id='+id,
类型:“POST”,
成功:函数(数据){$('#output').html(数据);updateColor();}
});
}
函数updateColor(){
var color=$(“部分”).css(“背景色”);
$('body').css(“背景色”,颜色);
}
第(1)页;

您也可以在AJAX成功回调中调用在document ready回调中调用的颜色更改代码。理想情况下,您可以将其转换为函数,并这样调用它:

$(document).ready(function() {
    updateColor();
});

function getPage(id) {
$('#output').html('<img class="loader" src="/assets/img/loader.gif" />');
    jQuery.ajax({
        url: "get_page.php",
        data:'id='+id,
        type: "POST",
        }
    })
    .done(function(){
        updateColor();
    }
    // or just .done(updateColor)
}

function updateColor(){
    var color = $("section").css( "background-color" );
    $('body').css("background-color", color);
}
$(文档).ready(函数(){
updateColor();
});
函数getPage(id){
$('#output').html('');
jQuery.ajax({
url:“get_page.php”,
数据:'id='+id,
类型:“POST”,
}
})
.done(函数(){
updateColor();
}
//或者刚刚完成(更新颜色)
}
函数updateColor(){
var color=$(“部分”).css(“背景色”);
$('body').css(“背景色”,颜色);
}

我看不到从AJAX响应数据更新HTML的代码,但我认为这一切都很好,并且新的
部分
定义了背景色。

您可以发布HTML吗?您没有使用任何AJAX…看起来您的函数在页面加载后会被触发,但在某些AJAX更新后不会被触发。函数可以工作,但并非出于预期目的;)您发布的代码将在页面加载时触发一次。在您再次加载页面之前,它将不会再次启动。Ajax不会导致页面重新加载,因此您的颜色永远不会发生变化。将js代码放入函数中,然后在成功完成ajax后调用该函数。我在上面添加了缺失的部分,感谢大家的回答!下面是我用你的答案得出的结论。编辑:更新topYup,就是这样。顺便说一句,没有必要在你的问题中重复我的答案,因为它将永远留在这里。再次感谢你,我真的没想到会有这么快的回答,完全符合我的要求。如果你没有猜到的话,我是新来的:-)不客气,伙计,大多数时候这里都是很棒的地方!哦,欢迎上船!:)