相关疑难解决方法(0)

仅打印<div id ="printarea"> </ div>?

如何打印指定的div(无需手动禁用页面上的所有其他内容)?

我想避免使用新的预览对话框,因此使用此内容创建新窗口无用.

该页面包含几个表格,其中一个表格包含我要打印的div - 该表格采用网页的视觉样式设计,不应该以打印方式显示.

javascript css printing dhtml

411
推荐指数
13
解决办法
66万
查看次数

为什么document.write被认为是"不好的做法"?

我知道document.write被认为是不好的做法; 我希望编制一份提交给第三方供应商的理由清单,说明为什么他们不应该document.write在分析代码的实现中使用它们.

请在下面提供您声称document.write为不良做法的理由.

javascript

355
推荐指数
10
解决办法
18万
查看次数

ie8 var w = window.open() - "消息:参数无效."

我有一个只有IE8问题的网站:

代码是:

var w = window.open(urlstring, wname, wfeatures, 'false');
Run Code Online (Sandbox Code Playgroud)

错误是:

消息:参数无效.
行:419字符:5
代码:0
URI:http://HOSTNAME/js_context.js

我已经确认了代码的行号("行"和"URI"是正确的),我理解在IE8的更高版本中,这被认为是准确的.

我通过转储警报检查了调用中的所有传入参数,它们看起来都是有效的.

这个问题不会发生在FF(可能是3)上.

更新:

问题似乎是在执行"var w"时使用window.open()的结果.当我将该行分成两个语句时,它在IE8中有效.

UPDATE2:

基于:

http://javascript.crockford.com/code.html

当要立即调用函数时,整个调用表达式应该包含在parens中,以便很明显生成的值是函数的结果而不是函数本身.

这不完全是这里发生的事情,但我发现在IE8的兼容模式下应用该原则解决了这个问题.

var w = (window.open(urlstring, wname, wfeatures, false));
Run Code Online (Sandbox Code Playgroud)

javascript internet-explorer-8

113
推荐指数
5
解决办法
12万
查看次数

window.print()在IE中不起作用

我在javascript中做这样的事情,点击链接打印我的页面的一部分

function printDiv() {
 var divToPrint = document.getElementById('printArea');
 var newWin = window.open();
 newWin.document.write(divToPrint.innerHTML);
 newWin.print();
 newWin.close();
}
Run Code Online (Sandbox Code Playgroud)

它在Firefox中很好用,但在IE中却不行.

请有人帮忙

javascript printing internet-explorer

64
推荐指数
4
解决办法
11万
查看次数

使用Jquery打印div内容

我想使用jQuery打印div的内容.这个问题已经在SO中提出,但我找不到正确的(有效的)答案.

这是我的HTML:

<div id='printarea'>
    <p>This is a sample text for printing purpose.</p>
    <input type='button' id='btn' value='Print'>
</div>
<p>Do not print.</p>
Run Code Online (Sandbox Code Playgroud)

在这里,我想打印div的内容printarea.

我试过这个:

$("#btn").click(function () {
    $("#printarea").print();
});
Run Code Online (Sandbox Code Playgroud)

但是单击按钮时会出现控制台错误:

未捕获的TypeError:$(...).print不是函数

但是当我尝试使用打印整个页面时

window.print();
Run Code Online (Sandbox Code Playgroud)

这是工作.但我只想打印特定div的内容.我$("#printarea").print();在许多地方看到了答案,但这不起作用.

html javascript printing jquery

31
推荐指数
10
解决办法
18万
查看次数

将javascript计算样式从一个元素设置为另一个元素

所以我试图复制适用于一个元素的所有样式(class/id/tagName/attribute等).到目前为止,我发现我可以复制元素的计算样式,只有一个问题... couldend将它应用于其他元素; /

或diffrend复制所有样式的方法.

(这是我得到的:/) http://jsfiddle.net/8KdJd/2/

   //queriks mode + minor changes to retrive the computed style
function getCS(el)
{
    if (el.currentStyle)
        var y = el.currentStyle;
    else if (window.getComputedStyle)
        var y = document.defaultView.getComputedStyle(el,null);
    return y;
}
function setCS(el,cs)
{
    if (el.currentStyle)
    {

        el.currentStyle = cs;
        el.style = cs;
    }
    else if (window.getComputedStyle)
    {el.style = cs 
    }

}


var myLink = document.getElementById('myLink');
var anotherLink = document.getElementById('anotherLink');

var CS_myLink = getCS(myLink);
setCS(anotherLink,CS_myLink);
Run Code Online (Sandbox Code Playgroud)

javascript clone copy set computed-style

11
推荐指数
2
解决办法
9541
查看次数

读取Chrome的Ctrl + P数据

chrome扩展程序是否可以读取ctrl + p数据并将其另存为pdf或html,而不显示打印屏幕?

javascript google-chrome google-chrome-extension

11
推荐指数
1
解决办法
571
查看次数

使用CSS隐藏打印内容

我正在寻找一种简单的方法来隐藏除了某个div及其内容之外的所有内容.

<html>
  <head></head>
  <body>
    <div class="header">...</div>
    <div class="menu">...</div>
    <div class="content">...</div>
    <div class="footer">...</div>
  </body>.
</html>
Run Code Online (Sandbox Code Playgroud)

所以,例如,如果我只想打印div.content,我会这样做:

.header, .menu, .footer {
  display: none;
}
Run Code Online (Sandbox Code Playgroud)

如果布局复杂,它就会变得混乱.使用CSS有更简单的方法吗?

css printing

10
推荐指数
3
解决办法
5万
查看次数

是否有一种Angular方式从HTML页面打印div?

我有一个使用AngularJS的html页面,我想从中打印一个div.有角度的方式吗?..或者它只是下面的经典JavaScript方式:

    <script language="javascript" type="text/javascript">
    function printDiv(divID) {
        //Get the HTML of div
        var divElements = document.getElementById(divID).innerHTML;
        //Get the HTML of whole page
        var oldPage = document.body.innerHTML;

        //Reset the page's HTML with div's HTML only
        document.body.innerHTML =
        "<html><head><title></title></head><body>" +
        divElements + "</body>";

        //Print Page
        window.print();

        //Restore orignal HTML
        document.body.innerHTML = oldPage;
        }
    </script> 
Run Code Online (Sandbox Code Playgroud)

如果AngularJS没有任何相关内容,你能不提出使用JavaScript函数的建议吗(例如:doc.getElementById())..一种接近AngularJS方法的方法吗?

谢谢,

html javascript css jquery angularjs

10
推荐指数
2
解决办法
2万
查看次数

HTML5如何在特定的div类或id上打印一个屏幕

我正在使用html5网页我显示了一些产品列表,这个列表在div标签里面,这是用css设计的.我想打印产品列表获取css样式.

我需要单击按钮来捕获并显示特定div类或id的窗口.然后打印div类或id

javascript css jquery html5

6
推荐指数
1
解决办法
6万
查看次数