代码之家  ›  专栏  ›  技术社区  ›  Oscar Godson

从jQuery+AJAX请求中选择时IE8返回NULL

  •  1
  • Oscar Godson  · 技术社区  · 13 年前

    其次,这适用于所有其他浏览器。

    $('.calendarWrap .dayEvents li:not(.prevMonth) a').click(function(e){
                the_url = $(this).attr('href');
                $.get($(this).attr('href'),function(data){
                    $('#calendar-bubble').remove();
                    $('body').prepend('<div style="display:none;left:'+(e.pageX)+'px;top:'+e.pageY+'px;" id="calendar-bubble">'+$('#main-content',data).html()+'<p class="details"><a href="'+the_url+'">View event details &gt;</a></p></div>').find('#calendar-bubble').fadeIn(150);
                    $cb = $('#calendar-bubble');
                    if($(window).width()-($cb.outerWidth()+$cb.offset().left) < 0){
                        $cb.css({left:(e.pageX-$cb.outerWidth())+'px'});
                    }
                    if($(window).height()-($cb.outerHeight()+$cb.offset().top-$(window).scrollTop()) < 0){
                        $cb.css({top:(e.pageY-$cb.outerHeight())+'px'});
                    }
                });
                return false;
            });
    

    最后,这里是请求页面的HTML: http://pastebin.com/DZE79xiA

    有没有人知道任何其他方法来获取这样的数据并对其进行解析,只获取主要内容?

    2 回复  |  直到 13 年前
        1
  •  1
  •   Oscar Godson    13 年前

    最后,经过一周的斗争,我发现这是因为HTML5元素。最后我不得不使用: http://jdbartlett.github.com/innershiv/

        2
  •  0
  •   pex    13 年前

    你贴的好像是对的。如果我理解你的问题,你可以试试

    var content = $(data).find('#main-content')
    

    而不是

    $('#main-content',data)