attachEvent的使用方法与传递参数[IE|firefox]
比较好的解决办法可以用作用域,比较下下面的变量str在作用域内和作用域外的值
代码如下:
<input id="button1" type="button" value="按我" />
<script language="javascript">
window.onload=function(){
var obj=document.getElementById("button1");
(function(){
var str="看到我了吧";
var func=function(){
alert(str);
}
if (document.all)
obj.attachEvent("onclick",func);
else
obj.addEventListener("click",func,false);
})();
alert(typeof(str));
}
</script>
效果2
window.onload=function(){
var obj=document.getElementById("button1");
(function(){
var func=function(str){
alert(str);
}
if (document.all)
obj.attachEvent("onclick",function(){func("看到我了吧");});
else
obj.addEventListener("click",function(){func("看到我了吧");},false);
})();
}
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
楼上若不比较作用域范围内外的值,是否可以简化为:
var obj=document.getElementById("button1");
var func=function(str)
{
alert(str);
}
if (document.all)
obj.attachEvent("onclick",function(){func("看到我了吧");});
else
obj.addEventListener("click",function(){func("看到我了吧");},false);
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
相关推荐
-
解决使用attachEvent函数时,this指向被绑定的元素的问题的方法
使用attachEvent对同一事件进行多次绑定,这是解决事件函数定义冲突的重要方法.但是在IE中,函数内的this指针并没有指向被绑定元素,而是function对象,在应用中,这是很难受的一件事,如果试图用局部变量传送元素,会因为闭包而引起内存泄漏.那么,我们应该如何解决这一难题呢? 我给Function添加了原型方法"bindNode",在这个方法里,根据传送过来的元素,进行全局性存储转换,然后返回经过封装的函数,使用call方法来进行属主转换. <html> <
-
JavaScript通过attachEvent和detachEvent方法处理带参数的函数
无标题文档 var theP; //P标签对象 var show=function(msg){ //直接定义 function show(msg) 效果是一样的 return function(){ alert(msg+" from show()"); if(window.addEventListener){ //FF etc. theP.removeEventListener("click", theP.show11, false); } else{ //IE t
-
javascript attachEvent和addEventListener使用方法
attachEvent方法 按钮onclick addEventListener方法 按钮click 两者使用的原理:可对执行的优先级不一样,下面实例讲解如下: attachEvent方法,为某一事件附加其它的处理事件.(不支持Mozilla系列) addEventListener方法 用于 Mozilla系列 举例: Java代码 复制代码 代码如下: document.getElementById("btn").onclick = method1; document.getElem
-
JS在IE和FF下attachEvent,addEventListener学习笔记
对象名.addEventListener("事件名(不带ON)",函数名,true/false);(FF下) 对象名.attachEvent("事件名",函数名);(IE下) 说明: 事件名称,要注意的是"onclick"要改为"click","onblur"要改为"blur",也就是说事件名不要带"on". 函数名,记住不要跟括号最后一个参数是个布尔值,表示该事件的
-
Javascript 的addEventListener()及attachEvent()区别分析
Mozilla中: addEventListener的使用方式: target.addEventListener(type, listener, useCapture); target: 文档节点.document.window 或 XMLHttpRequest. type: 字符串,事件名称,不含"on",比如"click"."mouseover"."keydown"等. listener :实现了 EventListene
-
attachEvent的使用方法与传递参数[IE|firefox]
比较好的解决办法可以用作用域,比较下下面的变量str在作用域内和作用域外的值 复制代码 代码如下: <input id="button1" type="button" value="按我" /> <script language="javascript"> window.onload=function(){ var obj=document.getElementById("but
-
thinkPHP中U方法加密传递参数功能示例
本文实例讲述了thinkPHP中U方法加密传递参数功能.分享给大家供大家参考,具体如下: thinkPHP中的U方法用于对URL地址进行组装.可自动根据当前的URL模式和设置生成对应的URL地址.基本使用可参考 //www.jb51.net/article/51057.htm 具体代码如下: <?php /** * 简单对称加密算法之加密 * @param String $string 需要加密的字串 * @param String $skey 加密EKY */ function encode(
-
jquery引用方法时传递参数原理分析
经常到网上去下载大牛们写的js插件.每次只需将js引用并设置下变量就行了,但一直没搞明白原理(主要是大牛们的代码太简练了-,-). 这次弄清了如何传递.设置多个(很多个)参数. 如 方法为function lunbo(){}; 在调用.设置的时候写: lunbo({ speed:200, wrapper:'#id', ease:'easing' }) 则,在方法内获取的时候: function lunbo(options){ var set=$.extend({},options); var _
-
C#传递参数到线程的方法汇总
本文汇总整理了传递参数到线程的方法供大家参考,非常实用,具体内容如下: 首先我们要知道什么是线程,什么时候要用到线程,如何去使用线程,如何更好的利用线程来完成工作. 线程是程序可执行片段的最小单元,是组成运行时程序的基本单元,一个进程有至少一个线程组成.一般在并行处理等待事件的时候要用到线程,如等待网络响应,等待I/O通讯,后台事务处理等情况.使用线程其实很简单,在.net框架下面你首先要定义一个函数来完成一些工作,然后实例化一个线程对象Thread thrd = new Thread(new
-
JQuery中如何传递参数如click(),change()等具体实现
因为要做这样一个作业,就是两个select中option相互转换,图如下: 这个作业就是给几个按钮添加click()事件,一般的用法是这样的: 复制代码 代码如下: $("#but_one").click(function(){ $("#select1 option:selected").appendTo($("#select2")); }); 然后我查找了官方文档,对click的说明是这样的,后来我还是没有百度到答案, 我考虑到代码的重用性,想
-
Angularjs中$http以post请求通过消息体传递参数的实现方法
本文实例讲述了Angularjs中$http以post请求通过消息体传递参数的方法.分享给大家供大家参考,具体如下: Angularjs中,$http以post在消息体中传递参数,需要做以下修改,以确保消息体传递参数的正确性. 一.在声明应用的时候进行设置: var httpPost = function($httpProvider) { /******************************************* 说明:$http的post提交时,纠正消息体 ***********
-
AngularJS入门教程二:在路由中传递参数的方法分析
本文实例讲述了AngularJS在路由中传递参数的方法.分享给大家供大家参考,具体如下: 我们不仅可以在控制器中直接定义属性的值,比如: app.controller('listController',function($scope){ $scope.name="ROSE"; }); AngularJS还提供了传递参数的功能,目前我接触到的一种方式是从视图中传参: <!--首页html--> <li><a href="#/user/18"
-
Spring Mvc中传递参数方法之url/requestMapping详解
前言 相信大家在使用spring的项目中,前台传递参数到后台是经常遇到的事, 我们必须熟练掌握一些常用的参数传递方式和注解的使用,本文将给大家介绍关于Spring Mvc中传递参数方法之url/requestMapping的相关内容,分享出来供大家参考学习,话不多说,直接上正文. 方法如下 1. @requestMapping: 类级别和方法级别的注解, 指明前后台解析的路径. 有value属性(一个参数时默认)指定url路径解析,method属性指定提交方式(默认为get提交) @Reques
-
url 特殊字符 传递参数解决方法
十六进制值 1. + URL 中+号表示空格 %2B 2. 空格 URL中的空格可以用+号或者编码 %20 3. / 分隔目录和子目录 %2F 4. ? 分隔实际的 URL 和参数 %3F 5. % 指定特殊字符 %25 6. # 表示书签 %23 7. & URL 中指定的参数间的分隔符 %26 8. = URL 中指定参数的值 %3D 解决的方法:replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符.而st
随机推荐
- NancyFx框架检测任务管理器详解
- EasyUI创建人员树的实例代码
- Vue的Flux框架之Vuex状态管理器
- 微信小程序 仿美团分类菜单 swiper分类菜单
- 纯脚本备份_还原驱动增强版附相关sleep.exe
- 详解Layer弹出层样式
- 捕获键盘事件(且兼容各浏览器)
- cocos2dx骨骼动画Armature源码剖析(一)
- 浅析JavaScript中的平稳退化(graceful degradation)
- Asp 编码互转的研究和实现代码
- Android编程实现手绘及保存为图片的方法(附demo源码下载)
- 浅析PHP程序防止ddos,dns,集群服务器攻击的解决办法
- Javascript 刷新全集常用代码
- Bootstrap实现响应式导航栏效果
- 进一步深入Ruby中的类与对象概念
- SQL server 表数据改变触发发送邮件的方法
- 如何在MVC应用程序中使用Jquery
- 原生JavaScript实现的简单省市县三级联动功能示例
- 彻底掌握IIS6.0功能及应用详解图文教程一第1/2页
- myeclipse智能提示设置的实现方法