荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: playboy (冷冷的太阳), 信区: Program
标  题: javascript 在E-MAIL中的应用
发信站: BBS 荔园晨风站 (Tue Feb 29 23:04:35 2000), 转信


                        JavaScript在E-mail中的应用

          JavaScript是Internet上一种新兴的编程语言,它主要用于Web的
          制作,可以实现各种动态和交互效果。本文成功地将JavaScript技
          术应用于E-mail,使得E-mail用户一打开电子邮件信箱便可以感受
          到邮件的动态及交互效果。

          JavaScript是一种基于对象的描述性语言,将JavaScirpt语句嵌入
          HTML文档,支持JavaScript的浏览器会解释执行JavaScript语句,
          实现各种效果。
          
          一、在E-mail中使用JavaScript的可行性

          一般情况下,电子邮件的内容总是原封不动地发送到对方。
          JavaScript一般只用于Web制作,如果在邮件内容中直接用
          JavaScript语句,收件人打开信箱后将看到邮件中的JavaScript语
          句本身,而不会看到JavaScript语句执行所产生的效果。

          解决方法是将邮件的内容保存在以.htm或.html为后缀的文件中,
          发送邮件时Netscape Mail的Attachment功能将该文件附带发送出
          去。这样如果收件人所使用的E-mail工具支持JavaScript(如常用
          的Netscape Navigator所带的Netscape Mail),则收件人打开信箱
          便能看到Java Script语句所产生的各种效果。

          因此,只要以方约定阅读E-mail时所用的工具,便可以按以下步骤
          发送含JavaScript语句的电子邮件:

          1.用普通的文本编辑器编写电子邮件的内容,在邮件内容中可添加
          JavaScript语炯谌荨?

          二、在弹出的对话框内显示邮件内容

          JavaScript
          <SCRIPT LANGUAGE="JavaScript">及</SCRIPT>之间,在
          JavaScript中,Window对象提供了alert,confirm和prompt三个方
          法可以打开一个对话框,并可定义在对 显示的内容。其使用格式
          分别为:
          window.alert(“对话框中显示的字符串”)
          window.confirm(“对话框中显示的字符串”)
          window.prompt(“对话框中显示的字符串”,“对话框中缺省显示
          的值”)
          三个方法显示三种不同的对话框,可用于不同的场合。
          为了让收件人一打开信箱使可以自动出现一个对话框,并在对话框
          内显示邮件内容,可以根据喜好采用上述三种方法中的一种。如将
          下面的内容保存到文件名为mail_a.htm的文件中:
          <script lanuage="JavaScript">    三、自动在新的窗口内显示邮件内容

          在弹出的对话框内显示邮件内容一般只适用于简短的邮件。如果邮
          件的内容较长,可用JavaScript中window对象提供的open方法来打
          开一个新的窗口,在新的窗口中显示邮件内容。窗口的外观风格可
          以自己设定,其使用格式为:

          window.open("URL",“窗口名称”,["窗口特性"]

          其中,URL为新的窗口显示内容的URL地址,如果不填则显示空白窗
          口。窗口特性中可以设置新的窗口中是否有工具条、状态行等。其
          可设置特性有:

          toolbar,location,directories,status,
          menubar,scrollbars,
          resizable,copyhistory,width,height
          除了width和height用象素值来表示窗口的宽与高外,其余均用yes
          或no来表示窗口是否有某特性。
          在JavaScript中,document涫褂酶袷轿?
          document,write("字符串")
          document.writeln("字符串")
          前者显示的字符串中不含换行符,后者含换行符。
          为了让收件人一打开信箱便可以自动出现一个新的窗口,并在窗口
          内显示邮件内容,可以用window.open打开一个空白窗口,用write
          和writeln来显示信件内容。其具体方法如下:
          <script language="JavaScript">
          m=open("",Email_From_xyx","toolbar=no,
          directories=no,menubar=no,
          resizable=yes,
          width=200,height=80");
          m.document.write("<CENTER>……</CENTER>");
          </script>

          将上述包含邮件内容的文字保存在htm为文件名后缀的文件中,用
          Netscape Mail将该文件发送给对方,则对方用Netscape Mail收信
          时会自动出现如下窗口:

          在上述文件中可以用多个Document.write或document.writeln语句
          在窗口显示更多的内容。值得一题的是,在write或writeln所书写
          的邮件内容中可以包含HTML标签,从而可以控制邮件内容的字体大
          小、字符颜色、字体等,并可以利用HTML一格等实现各种特殊编排
          效果。

          五、动态控制E-mail背景的颜色

          通过为document对象的beColor属性进行赋值,可以控制窗口的背
          景颜色,从而可以实现各种背景控制效果。其使用格式为:

          document.bgColor=“颜色值”
          其中的颜色既可以用文字表示,也可以用“rrggbb”形式的16进制
          数分别表示红、绿、蓝色彩所占的份量。
          常用颜色及其“rrggbb”形式的值如下:
          Black="#000000" Green="#008000"
          Silver="C0C0C0" Lime="#00FF00"
          Gray="#8080800"
          White="#FFFFFF" Yellow="#FFFF00"
          Maroon="#800000" Navy="#0000FF"
          Purple="800080" Teal="#008080"
          Fuchsia="#FF00FF" Aqua="#00FFFF"
          对某种颜色的红、绿、蓝三色的成分略作调整可获得其相近的其他
          颜色。

          结合其他语句,如通过循环语句动态地修改bgColor属性的值,可
          以让收信人在读信时背景颜色自动动态平滑地改变;通过读取机器
          时间,给beColor属性赋不同的值,可以由时间控制背景颜色。

          JavaScript能够识别HTML文档中的各种对象,如表单中的按钮等,
          并能识别对这些对象的鼠标操作。由此也可以通过按钮来让收信人
          通过点击按钮来控制邮件的背景色。如将下面的内容输入一个以
          htm为文件名后缀的文件中:
          <FORM>
          <INPUT TYPE=BUTTON VALUE=ToRed
          onClick=document.bgColor="red">
          <INPUT TYPE=BUTTON VALUE=ToYellow
          onClick=document.bgColor=yellow">
          <INPUT TYPE=BUTTON VALUE=ToBlue
          onClick=document.bgColor="blue">
          </FORM>
          cep fp Netscape Mail的Attachment功能将该文件附于邮件中,邮
          件的内容仍写在常规的区域,如下图所示:


          则收信人用Netscape Mail收信后会看到如下图所示的界面,点击
          不同的按钮可以控制不同的背景色。

          五、根据收信日期显示不同的邮件内容

        鞯氖奔洌?
          如getYear,getMonth,
          getDate,getHours,getMinutes,getSeconds,getDay可以分别获得
          当前的年、月、日、时、分、秒、星期的值。
          利用判断语句,结合前述的Write或Writeln语句,可以实现根据不
          同的时间显示不同邮件内容。如将以下的内容保存在以htm为文件
          名后缀的文件中,通过Netscape Mail的Attachment发送给对方。

          邮件内容1……
          <script language="JavaScript">
          var t =new Date();
          if(t.getHours()>22)
          document.write("这么晚了还在工作!");
          else document.write(“时间还早呢!”);
          </script>
          邮件内容2……
          如果对方在22点以后看邮件,将会看到:“邮件内容1……,这么
          晚了还在工作!邮件内容2……”;如果在22点以产看邮件,将会看
          到:“邮件内容1……时间还早呢!邮件内容2……”。

          六、结语

          本文讨论了利用JavaScript在E-mail中实现各种特殊效果,并给出
          了简单示例。如果充分利用JavaScript的编程功能,并在使用
          JavaScript的同时结合HTML规范的各种标签及Netscape对HTML规范
          的扩展功能,还可以实现更多的特殊效果。

--
※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.90]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店