2017-09-22 47 views
0

我有一个打印正在查看的当前页面的按钮。当我去打印时,我想隐藏div'mainMenuDiv'中包含的按钮菜单。如何在打印时隐藏我的按钮菜单?

以下都不起作用,并产生未捕获的空样式的错误。

document.getElementById('mainMenuDiv').style.display = 'none'; 
document.getElementById('mainMenuDiv').style.visibility = 'hidden'; 

这里是我的打印屏幕代码

<button className="printBtn" onClick={this.printPage}>PRINT SCREEN</button> 

printPage() { 
     window.print(); 
    } 

不知道我怎么能隐藏mainMenuDiv不使用上述的document.getElementById调用

+1

什么'console.log(document.getElem entById('mainMenuDiv'))'在您的开发工具中打印? – lukaleli

+0

null/undefined – user3622460

+0

所以你有你的答案;)在HTML中找不到元素。仔细检查您的javascript代码中的ID是否与HTML中的实际ID匹配,并且您的脚本是否在'body'结束标记之前添加。 – lukaleli

回答

4

可以使用@media类型,称为print和控制它通过CSS:

@media print { 
    #mainMenuDiv { 
    display: none; 
    visibility: hidden; 
    } 
} 
+0

是否与SASS一起工作? – user3622460

+0

[是](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#_media__media),就像普通的CSS一样。 –

相关问题