2016-11-21 22 views
1

我有一個div加載PDF文件的iframe。它會在點擊pdf圖標時出現,並且有一個標籤「X」,點擊後會隱藏div(onclick事件,只需將顯示改爲阻止)。但是,當試圖關閉div時,發生的情況是,加載的頁面也消失了,您看到的只是白屏。我必須按F12才能使頁面再次出現。該頁面運行在Firefox,Chrome和Safari應該是,我只有在IE9 IE11中的這個問題或行爲。但奇怪的是,當我使用BrowserStack測試頁面時,瀏覽器一切都很好。任何想法爲什麼發生這種情況?在Windows 7上的IE11顯示關閉div後的白色屏幕

<div class="pdf-file" style="display: none;"> 
    <label>X</label> 
    <iframe src="blah" scrolling="no" width=400 height=400 class="pdf-class"></iframe> 
</div> 

請注意,這個div的位置是絕對的。

onclick事件:

$('#pdf img).click(function() { 
    $('.pdf-file').show(); 
} 

$('.pdf-file label).click(function() { 
    $('.pdf-file').hide(); 
} 

的JavaScript的如上述那樣簡單,和行爲剛剛發生,我不明白爲什麼,我不記得改變大的東西在做網頁這種行爲,它以前工作得很好。

+0

該div被JavaScript調用隱藏,然後呢?你可以顯示代碼負責任嗎? –

+0

是的。請參閱上面問題的更新。 – sd4ksb

回答

0

在我工作的應用程序上,我們剛剛在最近幾天遇到了這個問題。經過多次討論後,我們找到了一個權宜之計。

首先,我們有一些差異 - 我們的情況並不像上面那麼簡單。我們正在將PDF加載到iFrame中,但該iFrame處於UI Bootstrap模式。點擊我們的模式中的取消按鈕後,我們得到了WSOD,這會導致模式實例消失,並且還會導致模式本身從DOM中刪除。

周圍的工作就是從這個去:

function cancel() { 
    $uibModalInstance.dismiss('Cancelled.'); 
} 

...要這樣:

function cancel() { 
    var $modal = $('div.modal-dialog'); 
    $modal.css('display', 'none'); 

    $uibModalInstance.dismiss('Cancelled.'); 
} 

這可能是,而不是調用$('.pdf-file').hide(),你應該做的,而不是代替$('.pdf-file').css('display', 'none');

+0

將嘗試你的解決方法,並會讓你知道...它只是奇怪,它以前工作,而不是現在...我重新安裝我的IE11認爲它可能是與瀏覽器,但沒有運氣.. – sd4ksb

+0

嘗試過你的解決方法,但它沒有做到這一點。感謝您的幫助。 – sd4ksb

+0

沒問題,祝你的問題好運。 –

1

在搜索了關於手頭問題的更多信息之後,我遇到了這個stackoverflow主題Blank iFrame in IE,它給了我一個想法,即iframe可能是我的問題,因此我將iframe更改爲對象,並且在IE中執行了這個操作。希望這可以幫助。

相關問題