jQuery-检查外部页面上是否存在DIV,如果存在,则加载DIV,否则加载另一个

jQuery - check if DIV on external page exists, then if it does, load the DIV, otherwise load another

本文关键字:加载 DIV 存在 外部 检查 另一个 如果 是否 jQuery-      更新时间:2023-09-26

为小型操作面板开发自定义天气页面。getweather#.php抓取我想要的天气信息,然后index.php根据需要使用jQuery加载特定元素。

所以-我试图让jQuery检查外部页面上是否存在特定的DIV,如果存在,则加载它,但如果没有,则加载另一个始终存在的DIV

基于我在这里发现的其他问题,我把这个代码放在一起,认为它会起作用:

<script>
    $(function(){
        if ($('getweather2.php?wx=1 #warning').is('*')) {
            $('#wxwarning').load('getweather2.php?wx=1 #warning');
        } else {
            $('#wxwarning').load('getweather2.php?wx=1 #nowarning');
        }
    });
</script>

遗憾的是,这似乎不起作用,而且,它会导致所有其他jQuery函数失败。

我似乎找不到任何真正能帮助我让这个剧本发挥作用的例子或任何东西。

谢谢。

在检查元素是否存在之前,必须实际获取数据
你不能使用load(),因为它直接插入数据,但它只是$.get的快捷方式,所以你可以使用它,并检查元素是否存在,如果它确实插入了它,如果没有插入另一个元素:

$.get('getweather2.php?wx=1', function(html) {
    var el = $('<div />').append(html);
    if ( el.find('#warning').length ) {
        $('#wxwarning').html(el.find('#warning'));
    }else{
        $('#wxwarning').html(el.find('#nowarning'));
    }
});