0

Uniform 是一个用于样式化表单的 jQuery 插件。我在我的项目中使用它,我有一个案例我需要关闭这个插件,然后再打开。

您通过以下方式(其中一种方式)打开插件:$("input, textarea, select, button").uniform();

如果您想关闭插件(恢复旧样式),请执行以下操作:$.uniform.restore();

它工作正常,但不能在button,submitreset. 当恢复这些输入的值时,会出现并在原始按钮的左侧找到一个位置。

这是一个 jsFiddle 链接,供您查看演示:jsFiddle uniform.js 问题

我试图解决这个问题,但没有运气。请帮帮我。谢谢。

4

1 回答 1

1

好吧,这是一个非常粗略的解决方法:

$.uniform._restore = $.uniform.restore;
$.uniform.restore  = function(elem) {
  if (elem === undefined) {
     elem = $($.uniform.elements);
  }
  $(elem).each(function() {
     if ($(this).is("button, :submit, :reset, input[type='button']")) {
       this[0].parentNode.firstChild.nodeValue = '';
     }
  });
  $.uniform._restore(elem);
};

如此处所示,它可以工作。但我宁愿在统一的源代码中解决这个问题(这就是它托管在 github 上的原因,毕竟)。)

于 2012-12-12T16:54:22.397 回答