2012-09-16 35 views
1

是否有可能爲不同的媒體(如印刷和屏幕)jQuery的顯示和隱藏不同的屬性?jquery隱藏和顯示打印

可以說我有2個div和一個按鈕,顯示並隱藏一個div並顯示另一個div。但是當我打印時,我想向他們展示他們。儘管如果我在css中定義它是顯示:inline;當前隱藏的塊隱藏在打印中。 我該如何解決這個問題? 謝謝 Dorijan

這裏樣本:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script> 
<style type="text/css"> 
@media print{ 
    #div1{ 
     display:block; 
    } 

    #div2{ 
     display:block; 
    } 
} 
</style> 

<div id="div1">Div1</div> 
<div id="div2">Div2</div> 
<a href="#" onclick="$('#div1').hide();$('#div2').show();">Showdiv1</a> 
<a href="#" onclick="$('#div2').hide();$('#div1').show();">Showdiv1</a> 
+0

打印樣式支持各不相同的瀏覽器。這是哪個瀏覽器?通常,打印與屏幕不同的內容的最佳方式是通過一個新窗口。 –

回答

1

添加類的可見元素如.visible。不是做這樣的事情:

@media print { 
    .visible {display:block} 
} 

更新

更新的問題後,我會說你需要使用!important -declaration ...

@media print{ 
    #div1, #div2{ 
     display:block !important; 
    } 
} 

Demo只是隱藏一個div並嘗試打印!

+0

我的錯誤,我忘了包括代碼示例,所以我想在打印時顯示兩個div ... – user899119

+0

@ user899119好吧,我已經更新了我的答案... – yckart

+0

Yesssss ...謝謝:) – user899119

0

Here is主題,如何從html頁面打印表格(div等)。 我認爲它更好的解決方案

+0

謝謝,我的錯誤,我忘了包含代碼示例,所以我想在打印時顯示兩個div。 – user899119