<input type="text" onclick="ent()"/>function ent(){
//IE下可以如下写
var e=this;
alert(e.type);
}
请问一下FF下要怎么写,可以获得input这个对象
//IE下可以如下写
var e=this;
alert(e.type);
}
请问一下FF下要怎么写,可以获得input这个对象
解决方案 »
- IE浏览器A标签下包含img标签点击不跳转,怎么回事?急!急!急!急!
- 函数回调问题
- 急!急!javascript 文件动动加载的问题
- javascript中整行整列选取问题
- 高手帮忙看一下这个JS问题
- 在JS脚本内调用函数的问题?
- 请问我要做个当鼠标双击文本框时就可弹出时间选择器,可选着年份和日期;也可手动输入时间。分不够可在加呀!谢谢!
- 请问如何控制IE下载文件时是出现提示下载对话框还是直接找开文件?
- 太简单问题,没有先例,只好提问散分!如何清空一个只读的文本框?
- 上传文件时,如何用js验证上传的文件是中文名,不通过
- IE8调试模式对话框的问题
- 请问如何获取MediaPlayer对象的PlayStateChange事件?
//IE下可以如下写
//var e=this;
alert(e.type);
}
<input type="text" onclick="ent()"/> function ent(e){
//IE下可以如下写
e=window.event ||e;
e=e.srcElement ||e.target; //取出触发事件的对象
alert(e.type);
}
其实我是通过遍历控件 在window.onload 里写的
window.onload = function(){
var obj = document.getElementsByTagName("input");
for(var i=0;i<obj.length;i++){
obj[i].onclick=ent;
}
}
这样的话 怎么加this呢
,3楼的这种方法,可能直接用this的
obj[i].onclick=function() {
//这样可以直接用this
}
或者
obj[i].onclick=function() {ent(obj[i])};
这个我试过了 好像FF下没有作用
IE会有js错误
function ent(e){
//IE下可以如下写
e = e || window.event;
tar = e.srcElement || e.target;
alert(e.type);
}<input type="text" onclick="ent(this)"/>
<div> <input type="button" value="查找"/>
<input type="text" />
</div>
<script type="text/javascript">
var ent= function(e) {
e=window.event ||e;
e=e.srcElement||e.target;
alert(e.type);
}
var ent2=function(obj) {
alert(obj.type);
}
window.onload=function() {
var inputs=document.getElementsByTagName("input");
for(var i=0;i<inputs.length;i++) {
//inputs[i].onclick=ent;//ie8,ff3.5下通过
(function(obj){//这里要用到闭的写法,ie8,ff3.5下通过
obj.onclick=function() {ent2(obj)};
})(inputs[i]);
}
}
</script>
</body>
window.onload = function(){
var obj = document.getElementsByTagName("input");
for(var i=0;i <obj.length;i++){
obj[i].onclick=function(obj[i]) {ent(obj[i])};
}
}