0

我有一个正在加载 ajax 的 div,但我想添加一个 if 语句来仅加载尚未加载的 ajax。由于某种原因,这在我的网站上不起作用(单击左眼查看错误。)。相反,ajax 内容滑入,然后通过 ajax 重新加载内容。

这是我的代码:

    <script type="text/javascript">
    $(window).load(function () {
        function SlideOut(element) {
            var opened = $(".opened"),
                div = $("#" + element),
                content = $("#content");
            opened.removeClass("opened");
            div.addClass("opened");
            content.removeClass().addClass(element);
        }
        $("#content div").click(
            function () {
                var move = $(this).attr('data-move'),
                    id   = $(this).attr("id");
                if( id == 'forehead')
                {
                    $('#resume img').css('display', 'block');
                }

                else if(id =='left-eye23')
                {   
                    var  leftcontent;
                    leftcontent = $("#left-content");                       
                    content = leftcontent.attr('class');
                    if( !leftcontent.hasClass('photos'))
                    {       
                      SlideOut(move);
                        $("#left").bind("webkitTransitionEnd mozTransitionEnd oTransitionEnd msTransitionEnd transitionend", 
                        function(){ 
                            $.ajax({
                            url:'photos.php',
                            beforeSend: function(){
                                leftcontent.html('<img src="loading.gif" /> Now loding...');
                            },
                            }).done(function(data){
                                leftcontent.html(data);
                                leftcontent.addClass("photos");
                            }); 
                            });
                        }                       
                    else if (leftcontent.hasClass('photos'))
                    {
                      SlideOut(move); 
                    }

                }...

4

2 回答 2

1

if(leftcontent.length == 0)应该做的伎俩。

所以它看起来像:

var leftcontent = $("#left-content");                       
if(leftcontent.length == 0)
{
     //Do stuff
}

如果你 console.log 一个元素,它将返回一个长度。如果对象不存在,则长度为 0。仅当页面上没有 #left-content 时才会运行此 if。

于 2013-02-04T02:03:24.230 回答
0

改变:

leftcontent.html(data);

至:

$("#left-content").html(data)
于 2012-11-13T22:46:56.157 回答