为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦解释下,该段代码中e和data的含义

  <script type="text/javascript">

        //不同函数传递数据
        function data(e) {
            alert(e.data) //1111
        }

        function a() {
            $("button:eq(2)").click(1111, data)
        }
        a();

    </script>



正在回答

3 回答

e是event 事件

data是数据

0 回复 有任何疑惑可以回复我~
#1

油泼裤带面 提问者

讲道理的说,第一个function后面的data应该是函数名,是可以随意命名的,为什么将他改了之后函数无法运行呢?还有就是111后面那个DATA也是数据吗?这样使用是不是data的固定用法
2017-02-21 回复 有任何疑惑可以回复我~

最后个data是命名函数名,可用阿猫阿狗表示,最后个1111是阿猫阿狗的传参,首个data是对应最后个的执行函数,首个e是被传入参数,e.data(data为关键词)是e的数值属性

0 回复 有任何疑惑可以回复我~

第一个function 后的data是 函数名    第二个function中的data就是第一个data函数,调用第一个函数 所以改了就 没用

4 回复 有任何疑惑可以回复我~
#1

油泼裤带面 提问者

嗯 有道理,我再问下那个1111那个值是如何传送到e.data的?我看W3C里面click属性里面没有两个值的含义!代码上面也没有规定e的值是1111
2017-02-21 回复 有任何疑惑可以回复我~
#2

qq_MissingYou_0 回复 油泼裤带面 提问者

你这样想好了 function a() { $("button:eq(2)").click(1111, data) } function data(e) { alert(e.data) } 两个函数顺序对调 (事实上都是一样的) 我先执行函数a() 在click事件中传入了数据111和函数data(),当触发click事件时,调用函数data=====data(e)//因为此时的e就是click事件 所以 函数data()中的e.data就等于1111
2017-02-21 回复 有任何疑惑可以回复我~
#3

qq_MissingYou_0 回复 qq_MissingYou_0

其实就是通过e.data来获取1111
2017-02-21 回复 有任何疑惑可以回复我~
#4

油泼裤带面 提问者 回复 qq_MissingYou_0

额 后面的那个函数我是可以理解的,click点击后触发函数data,也就相当于我通过点击按钮触发date事件,因为他是一个事件所以没有问题,但是那个1111它不是事件所以还是不能理解,click(a,b)有ab的解释还是什么?应该没有吧?
2017-02-21 回复 有任何疑惑可以回复我~
#5

qq_MissingYou_0 回复 油泼裤带面 提问者

a,b是自己传入的参数啊 a是数据 b是函数------a=====1111 click(a,b)就是jquery中定义的
2017-02-21 回复 有任何疑惑可以回复我~
#6

qq_MissingYou_0 回复 油泼裤带面 提问者

click([eventData ], handler(eventObject) )
2017-02-21 回复 有任何疑惑可以回复我~
#7

油泼裤带面 提问者 回复 qq_MissingYou_0

哦 对啊 我在把这个函数理解下 谢大哥指点
2017-02-21 回复 有任何疑惑可以回复我~
查看5条回复

举报

0/150
提交
取消

麻烦解释下,该段代码中e和data的含义

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信