JQuery ui桥接失败,错误为l。选项不是函数

JQuery ui桥接失败,错误为l。选项不是函数,jquery,jquery-ui,firefox,dialog,Jquery,Jquery Ui,Firefox,Dialog,我正在开发的网站使用了一种技巧来加载和初始化所有元素。 基本思想是以下jQuery代码段: $(document).ready(function() { $.fn.plugins = function() { $('.plugins', this).each(function() { var data, elem, name, value; elem = $(this); data = elem.data(); for (name in

我正在开发的网站使用了一种技巧来加载和初始化所有元素。 基本思想是以下jQuery代码段:

$(document).ready(function() {
  $.fn.plugins = function() {
    $('.plugins', this).each(function() {
      var data, elem, name, value;
      elem = $(this);
      data = elem.data();
      for (name in data) {
        value = data[name];
        if (name in $.fn) {
          elem[name](value);
        }
      }
    });
  };
});
有了它,我可以在html文档中执行以下操作作为示例:

<div id="dialog-add" class="plugins" data-dialog='{ "autoOpen": false }'>

通常我会将其与valitor插件一起使用,如下所示:

<form class="plugins" data-valitor="">

非常酷,只是我在jQueryUI1.8.13中遇到了一个非常奇怪的bug。 在Firefox4.0.1中,当您插入一个对话框时,我得到一个错误“l.option不是一个函数”

你可以在这里看到问题:(编辑:)

我不知道它为什么会失败

[编辑] 它似乎与数据对话框有关,数据属性的名称与方法的名称相同,但当我在范围外调用它时,它仍然有效