IE浏览器打印的页眉页脚设置解决方法

首先说明问题:

    默认情况下,通过IE的打印对话框,打印出来的内容都有页眉和页脚的。

查看ie的页面设置发现如右图中,页眉页脚。

    下面先说明&w&bPage&p of &P , &u&b&d的含义

 

 

  • &w - 窗口标题
  • &u - 页面地址
  • &d - 短日期格式,如10/12/2006
  • &D - 长日期格式,如Tursday, October 12, 2006
  • &t - 12小时制时间
  • &T - 24小时制时间
  • &p - 页面的当面页码
  • &P - 总页码数
  • && - 即&
  • &b - 符号之前的文字右端对齐
  • &b&b - 第一个符号之前的文字剧中对齐,第二个符号之前的文字右端对齐
  •  

      

     

     

     

      当然我们可以手动删除页眉页脚,如果用户就是不想自己去修改,则可以通过下面的脚本强制进行修改:

    var hkey_root,hkey_path,hkey_key
    hkey_root
    ="HKEY_CURRENT_USER"
    hkey_path
    ="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"
    //设置网页打印的页眉页脚为空
    function pagesetup_null(){
    try{
        var RegWsh 
    = new ActiveXObject("WScript.Shell")
        hkey_key
    ="header" 
        RegWsh.RegWrite(hkey_root
    +hkey_path+hkey_key,"")
        hkey_key
    ="footer"
        RegWsh.RegWrite(hkey_root
    +hkey_path+hkey_key,"")
        }catch(e){}


    这一招有些狠,它是去修改注册表。所以一般都会弹出一个对话框

    image

    如果点击了“是”,那么如你所愿,现在页眉和页脚都没有了。

     

    接下来,如果说我们需要恢复呢?

     

    代码
    //设置网页打印的页眉页脚为默认值
    function pagesetup_default(){
        try{
        var RegWsh 
    = new ActiveXObject("WScript.Shell")
        hkey_key
    ="header" 
        RegWsh.RegWrite(hkey_root
    +hkey_path+hkey_key,"&w&b页码,&p/&P")
        hkey_key
    ="footer"
        RegWsh.RegWrite(hkey_root
    +hkey_path+hkey_key,"&u&b&d")
        }catch(e){}

     

     

          其中WScript.Shell(Windows Script Host Runtime Library)是一个对象,对应的文件是C:\WINDOWS\system32\wshom.ocx,Wscript.shell是服务器系统会用到的一种组件。shell 就是“壳”的意思,这个对象可以执行操作系统外壳常用的操作,比如运行程序、读写注册表、环境变量等。

    更多的WScript应用可以查看:http://blog.csdn.net/livelylittlefish/archive/2008/11/30/3411958.aspx

     

     

     

    posted @ 2009-12-07 15:06  蟋蟀的草坪  阅读(7347)  评论(0编辑  收藏  举报