如题,文本框本身已经有设置了onfocus事件了,<input type="text" onfocus="setValue(this)"/>现在又想所有文本框 获得焦点的时候让它的背景色变色
所以动态增加了一段JS
var item=document.getElementsByTagName("input")
for(var i=0; i<item.length; i++){
if(item[i].type=="text"){
item[i].onfocus=SetColor;
}
}
function SetColor(event)
{
var event=event || window.event;
var obj = event.srcElement || event.target;
obj.style.backgroundColor='#00FF00'
}
但是这样一设置后导致了原本的一个onfocus事件被后来动态增加的onfocus事件覆盖掉了
只执行了SetColor函数,如何处理能够让让个方法都被执行,动态onfocus是每个文本框都必须的,但是setValue只是部分文本框有所以不能写在同一个方法内如何可以让后设置的事件不覆盖点前面的事件
所以动态增加了一段JS
var item=document.getElementsByTagName("input")
for(var i=0; i<item.length; i++){
if(item[i].type=="text"){
item[i].onfocus=SetColor;
}
}
function SetColor(event)
{
var event=event || window.event;
var obj = event.srcElement || event.target;
obj.style.backgroundColor='#00FF00'
}
但是这样一设置后导致了原本的一个onfocus事件被后来动态增加的onfocus事件覆盖掉了
只执行了SetColor函数,如何处理能够让让个方法都被执行,动态onfocus是每个文本框都必须的,但是setValue只是部分文本框有所以不能写在同一个方法内如何可以让后设置的事件不覆盖点前面的事件
解决方案 »
- 使用Dialog弹出层都需要些什么条件啊,JQuery文件要什么版本
- 如何改写document.execCommand("BackColor",false,"red") 兼容火狐
- 关于input中自动添加内容后光标定位的问题!
- javascript题目
- 鼠标悬停表格可见,鼠标移开表格隐藏
- 两个javascript的基础问题·······················?
- 如何防止框架页面中的子页面被单独访问?
- 怎么才能定义input里面的鼠标样式
- 急件。。怎样页面一装载不是在最上端而是在最下端。。急。。
- 如何在表格的第3列前增加一列,该列的所有属性和第3列一样
- 51job 那样弹出层
- javascript实现窗口最大化
var item=document.getElementsByTagName("input")
for(var i=0; i <item.length; i++){
if(item[i].type=="text"){
if(document.all) item[i].attachEvent("onfocus",SetColor);
else item[i].addEventListener("focus", function(evt){SetColor(evt);},false)
}
}
function SetColor(event)
{
var event=event || window.event;
var obj = event.srcElement || event.target;
obj.style.backgroundColor='#00FF00'
}
function setValue() {
/**
* 在方法里加入下面的代码
*/
var args = arguments;
if (args[1]!=null&&args[1] == "setColor") {//判断是否提供第二个指示变色的参数
var item = document.getElementsByTagName("input")
for (var i = 0; i < item.length; i++) {
if (item[i].type == "text") {
item[i].onfocus = SetColor;
}
}
}
//.......下面是你原来的方法
}function SetColor(event) {
var event = event || window.event;
var obj = event.srcElement || event.target;
obj.style.backgroundColor = '#00FF00'
}需要调用变色的input标签
<input type="text" onfocus="setValue(this,'setColor')"/>
attachEvent()是IE独有的方法