站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Javascript 专题使用JavaScript来编写动态Html

使用JavaScript来编写动态Html

摘要: 使用JavaScript来编写动态Html
<tr> <td>

  现在我们开始使用JavaScript来编写动态Html,JavaScript是一种脚本语言,使用起来就象是在编写程序一样。实际上,我们只要在Html文件中加入<script language="JavaScript"></script>标志对,便可以在标志对中进行编写了。现在我们将教程二中的例3做一下变换,也能得到同样的效果。请看下边的例子。

例 使用鼠标触发事件和动态样式表改变文本


<head>
DHtml举例6
<script language="JavaScript">
function change_text(){
if(document.all.Dragon.style.color=="Red"){
document.all.Dragon.style.color="Green";
}
else
{
document.all.Dragon.style.color="Red";
}
}
</script>
</head>
<body>


我是变色龙!


</body>

  例中在<script language="JavaScript"></script>标志对中定义了函数change_text(),当此函数被调用时,它将对对象Dragon的style属性中的color属性进行判断,若其颜色值等于“Red”,则将其color值变为“Green”(document.all.Dragon.style.color="Green"的作用),否则将其color值变为“Red”(document.all.Dragon.style.color="Red"的作用)。而对change_text()函数的调用是在

标志对中进行的,id="Dragon"定义了

标志对的对象名为Dragon,onmouseover和onmouseout都调用了change_text()函数,因此只要onmouseover或onmouseout事件触发,都会执行change_text()函数,于是便改变了Dragon的属性,即当鼠标移动到或离开文本“我是变色龙”时,此文本的颜色将在红色(Red)和绿色(Green)之间变换。Document指代的是上例自身这个Html文档,all指代的是此Html文档的全部对象。

  现在看起来要使网页动起来已经变得简单多了。细心的读者会发现例6的局限性,因为change_text()函数只能对Dragon对象进行颜色变换,若您想对一系列对象的文本(如列表中的每一行文本)进行颜色变换将会使代码增加。不用担心,我们马上解决。为了让change_text()函数更具有通用性,我把CSS样式单与JavaScript相结合,这将更加简单而且方便。

例 CSS样式单与JavaScript相结合改变文本


<head>
DHtml举例7

<script language="JavaScript">
function change_text(){
if(window.event.srcElement.className=="first"){
window.event.srcElement.className="later";
}
else
{
window.event.srcElement.className="first";
}
}
document.onmouseover=change_text;
document.onmouseout=change_text;
</script>
</head>
<body>



</body>

  本例中的特别之处在于蓝色字部分。CSS样式单首先定义了<body></body>标志对的样式(body {font-family:"宋体";font-size:9pt}),然后定义了另外两个样式类“first”和“later”,first类中的文本修饰是none,既没有修饰,而later的文本修饰是underline,及下加一条直线,并且,later类中还出现了cursor属性,其值为hand,即是网页中鼠标移到超级链结是出现的小手。除了小手外,cursor还可以取其它的值:default、hand、move、crosshair、text、wait、help、nw-resize、n-resize、se-resize、sw-resize、s-resize、w-resize、e-resize和ne-resize等。

  注意到语句 document.onmouseover=change_text;和document.onmouseout=change_text;只就是我们解决上边提到的问题的关键语句,它们代替了Html文档中所有的onmouseover和onmouseout事件。

  您大可以自己设计出更好看、更动感的DHtml来,不怕做不到,就怕想不到。

</td> </tr> </table>
↑返回目录
前一篇: 使用JScript 的变量
后一篇: 有理有力:个人网站的出路在于细分市场