有关网页编程javascript语言的问题。

最近在学网页编程语言。要用JS做一个下拉菜单。有个别人做给我看的但是我看不懂。JS代码如下:
<script>
document.getElementById("subMenu1").onmouseover = mousegoesover;
document.getElementById("subMenu1").onmouseout = mousegoesout;
function mousegoesover()
{
document.getElementById("subMenu1").className='abc cls1';
}
function mousegoesout()
{
document.getElementById("subMenu1").className='abc';
}
</script>
看不懂,所以就到http://www.w3school.com.cn/index.html 去学,把基本的JAVASCRIPT,HTML DOM,JQUERY都粗略看完了,但是再去看这些代码还是看不懂,想请问网上的高手,能告诉我上面这些代码是涉及到什么语言的吗,要学习哪方面的东西呢。怎么我看了还是不懂。
满意的再追加。

你好!
这个全是都是js!
简单说就是用id来触发鼠标经过和鼠标移开两个事件(onmouseover,nmouseout)
document.getElementById("subMenu1").onmouseover = mousegoesover;
document.getElementById("subMenu1").onmouseout = mousegoesout;
这两句就是分别给id叫subMenu1的元素鼠标经过(onmouseover )的时候触发mousegoesover()函数 mousegoesout函数就是移开!
下面这个方法就是当触发这个事件的时候把subMenu1的的css调用成abc cls1
function mousegoesover()
{
document.getElementById("subMenu1").className='abc cls1';
}
这个就是移开的时候ubMenu1的的css调用成abc;
function mousegoesout()
{
document.getElementById("subMenu1").className='abc';
}

请采纳一下吧追问

因为方便研究学习,别人做给我的下拉菜单只有一个菜单的,如果我还要添加比如“产品介绍”“历史简介”之类的下拉菜单。但是一个HTML页面只能有一个相同的id,那要怎么写,难道做多一个菜单,就要把以上的所有代码复制粘贴一次,然后再一个个改他们的id?

追答

复制别人给你写的“首页” 那个js 然后改id名就可以
document.getElementById("subMenu1").onmouseover = mousegoesover;
document.getElementById("subMenu1").onmouseout = mousegoesout;
document.getElementById("subMenu2").onmouseout = mousegoesout2;

document.getElementById("subMenu2").onmouseout = mousegoesout2;

function mousegoesover()
{
document.getElementById("subMenu1").className='abc cls1';
}
function mousegoesout()
{
document.getElementById("subMenu1").className='abc';
}

function mousegoesover2()
{
document.getElementById("subMenu2").className='abc cls1';
}
function mousegoesout2()
{
document.getElementById("subMenu2").className='abc';
}
这样就可以! 当然你也可以用css直接写下拉菜单··! 请采纳一下

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-24
除了基本的编程知识外,你还需要懂:
面向对象,
事件驱动,
函数对象,
还有DHTML和CSS。
JS是相对来说较简单的前端编程语言,有时间的话还要多了解一些浏览器的知识,一步一步来。

上面的代码是为id为“subMenu1”的元素增加两个事件响应函数,功能是当鼠标移到该元素时更改其元素的class属性为 ‘abc cls1’,当鼠标移出时将‘cls1’属性去掉。在样式文件中应该分别定义了‘.abc’ 和'.cls1'的样式。当元素的class改变时,其相应的样式,也就是显示效果也随之改变。追问

因为方便研究学习,别人做给我的下拉菜单只有一个菜单的,如果我还要添加比如“产品介绍”“历史简介”之类的下拉菜单。但是一个HTML页面只能有一个相同的id,那要怎么写,难道做多一个菜单,就要把以上的所有代码复制粘贴一次,然后再一个个改他们的id?

追答

这个用jQuery做很简单,

首先在文档中包含jQuery,

然后设置"产品介绍"的class为"abc",然后插入如下代码:

function swap() {
$('.abc').toggleClass('cls1');
}
$(function() {
$('.abc').mouseover(swap);
$('.abc').mouseout(swap);
});

第2个回答  2012-11-24
那些都是javascript代码要,要在HTML嵌入JS代码,就要写在<script> </script> 里面,所以这都是JS代码,只有写在<script> </script>里面,浏览器才会当它是JS解析。
先说明一下document.getElementById("subMenu1"),就是获取页面中id=subMenu1的节点
前面的document.getElementById(" ")是固定格式
onmouseover,onmouseout都是为该节点添加鼠标时间,分别是鼠标经过和鼠标移出

function aa(){} 就是定义aa函数
所以你的代码的意思如下:

<script>
document.getElementById("subMenu1").onmouseover = mousegoesover;
//获取id=subMenu1的节点,然后为它添加 鼠标经过 事件。

document.getElementById("subMenu1").onmouseout = mousegoesout;
//获取id=subMenu1的节点,然后为它添加 鼠标移出 事件。

function mousegoesover() //定义名为mousegoesover的函数
{
document.getElementById("subMenu1").className='abc cls1';
//将id=subMenu1的节点class改为'abc cls1'
}
function mousegoesout() //定义名为mousegoesout的函数
{
document.getElementById("subMenu1").className='abc';
//将id=subMenu1的节点class改为'abc'

}
</script>追问

(document.getElementById("subMenu1").onmouseover = mousegoesover;

document.getElementById("subMenu1").onmouseout = mousegoesout;)
这两句有什么用呢。
我为什么不能直接这样写。还要故意分别定义mousegoesover和mousegoseout函数呢。
function onmouseover()
{document.getElementById("subMenu1").className='abc cls1';}
function onmouseout()
{document.getElementById("subMenu1").className='abc';}

追答

(document.getElementById("subMenu1").onmouseover = mousegoesover;

就是为id=subMenu1的节点添加 鼠标经过 事件,mousegoesover就是鼠标经过的时候要做什么。
就好像我叫id=subMenu1的人去买食物,mousegoesover就是告诉他买什么食物,买食物的时候做什么。所以要另外分别定义mousegoesover和mousegoseout函数,
如果不定义的话只是叫他去买食物,而他是不知道要买什么食物,怎样去买

第3个回答  2012-11-27
这段代码的意思就是为 id是subMenu1 的元素绑定 onmouseover和onmouseout事件

看javascript之前建议先把html和css学好,楼主说粗略看完....直接看js我想也会看的不太明白...找些页面做一下.不需要想太多js...工多艺熟嘛~
第4个回答  2012-11-27
JavaScript
HTML DOM
DHTML
看这三个就行了

参考资料:http://www.w3school.com.cn/htmldom/met_doc_getelementbyid.asp

第5个回答  2012-11-25
不知道该怎么回答,有达内的S2_JavaScript电子课本,你看需要么追问

可以发给我吗 bruce-vane@foxmail.com

追答

发给你了,你看看,我在做JSP图书馆时也用了下拉菜单,也是从网上复制的,看的也是似是而非,很费劲

相似回答