如果modal.js中的条件令人困惑

时间:2015-02-23 06:52:00

标签: javascript jquery

嘿伙计们我刚刚浏览modal.js中的代码,它是jquery插件。

你可以查看here , line 284 .

有人可以解释下面这行是做什么的吗? 特别是这部分:

  data[option](_relatedTarget)

是上面一行调用一个函数或传递一个参数,究竟是做什么的?

如果我console.log(data[option]),我会在文档加载时得到Modal.prototype.hide()   当我点击启动按钮时function Modal.prototype.toggle()

如果我是console.log _relatedTarget我在文档加载和

上得到了未定义
 <button data-target="#myModal" data-toggle="modal" class="btn btn-primary btn-lg">
单击启动按钮时

但是,这个线路到底在做什么呢?

data[option](_relatedTarget). 

下面是插件的演示:Demo

对于我来说,理解那条特定线路正在做些什么至关重要。我将不胜感激任何解释,如果我不清楚任何事情,请在评论中告诉我,我会更加清楚。

谢谢。

亚历山大。

1 个答案:

答案 0 :(得分:2)

data[option]正在data上使用变量索引器来获取其option属性。

正如您所见,此属性的值可能会发生变化,但在这两种情况下,它都代表一种方法,hide()toggle()

_relatedTarget是方法的参数,可能指定应隐藏或切换哪个元素。