Mar
07

今天在写一个鼠标悬停下拉菜单过程中,遇到一个很抓狂的问题。既然是鼠标悬停效果,那就用到了jQuery的2个事件,mouseover和mouseout(在jQuery 1.3的API手册中只有这两个鼠标移入移出事件)。

先看下使用mouseout的效果:

Tips:您可以在运行代码前对其进行修改!

我们发现使用mouseout时,鼠标只要在容器里一移动,就被出发了hide(),其实是因为mouseout事件也会影响到子元素,也就是事件可能被同时绑定到了该容器的子元素上,所以鼠标移出每个子元素也都会触发我们的hide()。
[阅读全文:jQuery中使用mouseleave代替mouseout]

Dec
17

今天在制作一个登录表单验证的时候,遇到了一个非常令人恼火的问题。因为我需要登录到别人做好的系统中,因此表单中的各个对象(包括input文本以及一个隐藏input)都必须按照原有的名称来做。这样就出现问题了。

也许是我不了解.Net,不知道为什么表单中input的name都是带有冒号的。。。比如:Login1:tbName

这个名称很明显,一放到javascript中就不好使了,我alert一下都不行哎。。。人家根本不认冒号的嘛

alert(document.myform.Login1:tbName.value);

去掉冒号一切正常,所以断定就是冒号的问题。谷歌一下(最近开始慢慢不用百度了),搜form冒号,出来的基本上都是冒号的作用什么的,貌似没有人遇到过我这样的问题。。。

于是就得想其他办法来读取这个input文本的value了。正好看到一段代码中有用getElementById的,于是就尝试了一下。由于我基本属于没有学过javascript的,所以平时都只是看看改改别人的代码,只懂得些皮毛。所以要用语句都得去查查手册什么的~

网上找到一些比较有用的方法:

document.getElementById("link").href;
document.getElementById("link").target;
document.getElementById("img").src;
document.getElementById("img").width;
document.getElementById("img").height;
document.getElementById("input").value;
document.getElementById("div").innerHTML;

这里也可以读取input的value,不过是通过id来获取的,所以这样就不会影响到表单数据的传递,而达到我对表单验证的目的了。

top
46 queries. 0.368 seconds.