我有以下表单示例:LIVE DEMO
它在jNice(完整脚本)上运行:uncompressed versiuon
在我正在进行的项目中 - 我只需要它的部分功能 - 在其他部分是没有用的。
通过将'class =“jNIce”添加到表单元素来调用脚本。
我正在寻找:
我可以从哪里开始建议?任何帮助非常感谢。
皮特
答案 0 :(得分:1)
签出这些插件后,我发现这个插件的源代码中有简单的解释。所以我测试了几分钟,找到了你的问题的答案。
首先,您想要将其起点从<form>
更改为<div>
或其他内容。打开jNIce插件代码(.js
)并滚动到文件末尾然后更改此行:
/* Automatically apply to any forms with class jNice */
$(function(){$('form.jNice').jNice(); });
为:
/* Automatically apply to any forms with class jNice */
$(function(){$('div.jNice').jNice(); });
在html的body
中,只需移除class="jNice"
中<div>
个form
元素input
,select
,{{1}的地点button
等等...)本身。插件会自动将其更改为其样式。
其次,你说你想要阻止某些部分执行他们的更改。转到jNice插件中的第27行,然后您将看到:
$('input:submit, input:reset, input:button', this).each(ButtonAdd);
$('button').focus(function(){ $(this).addClass('jNiceFocus')}).blur(function(){ $(this).removeClass('jNiceFocus')});
$('input:text:visible, input:password', this).each(TextAdd);
/* If this is safari we need to add an extra class */
if (safari){$('.jNiceInputWrapper').each(function(){$(this).addClass('jNiceSafari').find('input').css('width', $(this).width()+11);});}
$('input:checkbox', this).each(CheckAdd);
$('input:radio', this).each(RadioAdd);
$('select', this).each(function(index){ SelectAdd(this, index); });
如果您希望jNice停止更改您不喜欢的form
元素,只需添加评论\\
或删除其行。例如,我不想要它的select
框样式,我把评论放在:
\\$('select', this).each(function(index){ SelectAdd(this, index); });
希望你发现这很有用:)
答案 1 :(得分:0)
找到改变jNice脚本调用的方法:
在最后一行之前我们有:
$(function(){$('form.jNice').jNice(); });
如果我们将其更改为(form - &gt; div(或我们想要的任何东西))
$(function(){$('div.jNice').jNice(); });
这样我们可以根据需要调用jNice(元素包装器或它自己的元素)。
注册