Как мне использовать jQuery, чтобы убрать dojotype="dijit.layout.TabContainer", когда media=print?
Поэтому я использую следующий код для создания TabContainer с 3 вкладками. Однако, когда я печатаю страницу, я бы хотел, чтобы страница выглядела так, как будто нет вызова dojotype="dijit.layout.TabContainer". Что я должен сделать, чтобы достичь этого?
<div id="holdtabscript">
<script type="text/javascript">
dojo.require("dijit.layout.TabContainer");
dojo.require("dijit.layout.ContentPane");
</script>
</div>
<div dojotype="dijit.layout.TabContainer" id="tabfunct">
<div dojotype="dijit.layout.ContentPane" title="pane1" selected="selected"> content1</div>
<div dojotype="dijit.layout.ContentPane" title="pane2"> content2</div>
<div dojotype="dijit.layout.ContentPane" title="pane3"> contents</div>
</div>
3 ответа
Я бы рекомендовал использовать CSS для этого, если у вас есть доступ к содержимому страницы. Включите таблицу стилей печати, которая скрывает раздел...
В голове...
<link rel="stylesheet" tyle="text/css" media="print" href="print-stylesheet.css">
CSS...
#tabfunct { display: none; }
Гораздо проще, чем использовать javascript для чего-то подобного.
Вы можете использовать следующую библиотеку: http://cssmedia.pemor.pl/
Тогда просто:
$(function() {
if(IsMediaType('print') > 0) {
$('#tabfunct').removeAttr('dojotype');
}
});
Должен, вероятно, сделать свое дело.
<style type="text/css">
@media print {
#tabfunct { display:none }
}
</style>