2012-02-26 16 views
6

Kullanıcının tıkladığı bir bindirmeli (normal resim görüntüleyicilerinden farklı değil) bir pop-up yazdım ve bir bindirme, görüntü için büyük resmi getiren ekranı kaplıyor.jquery remove(), sayfanın başına geri atlar

Sorun, kullanıcı 'kapat'ı tıklattığında, işlevim resmi kaldırır ve üst üste bastığında bunları kaldırır. .remove() işlevini çağırdığımda, tarayıcı gövde etiketine odaklanır ve sayfanın en üstüne gider.

offset.top co-ords dosyasını yakalayarak ve kullanıcının tıkladığı öğenin bir niteliğinde ve açılır pencere kapatıldıktan sonra ve sonra depolayarak bir çalışma yapmaya çalıştım. remove() işlevi çağrıldı, doğru kaydırma konumunu döndürmek için scrollTo() işlevini kullanıyorum (bu nedenle herhangi bir nedenden ötürü aşırıya kaçar ve öğeyi en üste kaydırır).

/*creating the popup layer and picture*/ 
function newsPopup(obj){ 

    /***PART ZERO - get the timestamp value of this ***/ 
    var itemID = $(obj).attr('itemID'); 
    var storyNumber = $(obj).attr('storyNumber'); 

    /*adding the identifier for later*/ 
    var offset = $(obj).offset(); 
    var roundedOff = Math.round(offset.top); 
    $(obj).attr('scrollMeBack', roundedOff); 

    /*** the script then continues to create an overlay and picture popup 
} 

/*function to remove popup*/ 
function overlayRemove(){ 
    //first fade out the cover and the container 
    $("#NEWS_overlay").fadeOut(); 
    $("#NEWS_centeringContainer").fadeOut(); 

    //then remove it from the page completely 
    setTimeout('$("#NEWS_overlay").remove();$("#NEWS_centeringContainer").remove();',400); 


    /*value to scroll the element back to*/ 
    var scrollBack = $('[SpringCMSscrollMeBack]').attr('SpringCMSscrollMeBack'); 
    setTimeout('$(window).scrollTop('+scrollBack+')',401); /*notes the 1 millisecond delay here to mean the scroll ahppen after the item has been removed.*/ 
    $('[scrollMeBack]').removeAttr('scrollMeBack'); 

} 

Neden .remove() fonksiyon Sayfanın en üstüne geri atlama neden oluyor? scrollTo ile çalışıldığında bile, şeyler kaybolduğunda belirsiz görünür, ancak ekranın üst kısmına doğru atlar ve ardından söz konusu öğeye geri döner.

cevap

İlgili konular