2011-06-06 69 views
0

我在寫jQuery插件時遇到了一些麻煩。我已經在所有需要它工作的瀏覽器(IE 8+,Chrome,Firefox,Safari,Opera)中工作,但它在IE7中無法正常工作。這裏是jQuery插件jQuery .after()未在IE 7中顯示

 (function($) { 
     $.fn.popup = function() { 
      return this.each(function() { 

       $(this).click(function(e){ 

        var url = $(this).find('a:eq(0)').attr('href'); 

         $('body').after('<div id="pu_bg" class="close"></div>'); 
         $('body').after('<div id="pu_content_container">' + 
         '<div id="pu_close_button" class="close"></div>' + 
         '<div id="pu_content">' + 
         'Loading...' + 
         '</div>' + 
         '</div>'); 
         $('#pu_bg').height($(document).height()); 
         $('#pu_content').load(url); 
         e.preventDefault(); 

       }); 

       $('.close').live('click',function() { 
        $('#pu_content_container').hide('slow', function(){ 
         $('#pu_bg').fadeOut('fast'); 
        }); 
       }); 

      }); 
     } 

    })(jQuery); 

在IE 7中絕對沒有任何事情發生。有沒有IE 7支持的jQuery功能? (儘管我確信jQuery是100%跨瀏覽器兼容的),我做錯了什麼?或者是IE7很挑剔,我需要創建一個工作?

請幫助!我對此感到非常沮喪!

由於提前, 李

+0

是否有任何錯誤? – lonesomeday 2011-06-06 17:49:12

回答

0

我很驚訝這個工作在任何瀏覽器,因爲您要追加body元素之後的元素。我想你可能想要append而不是after

+0

啊,好的,一個業餘的錯誤。但是,謝謝,解決了這個問題! :) – 2011-06-06 17:56:07