我一直试图暗示minicolors。一切都很好,我已经按照我想要的方式进行了定位,但是有一些问题对我而言是隐含的jQuery,我在控制台上收到此错误。Uncaught TypeError:Object [object Object]没有方法'miniColors',我已经包含了所有需要的jQuery文件。
<script src="javascripts/jquery.minicolors.js"></script>
<link rel="stylesheet" href="stylesheets/jquery.minicolors.css" />
<input class="mini" type="minicolors" data-swatch-position="left" value="#75bd25"
data-textfield="false" name="color" />
<script type="text/javascript">
$(document).ready( function() {
$('INPUT[type=minicolors]').miniColors({
change: function(hex, rgb) { $('body').css("background-color",hex); }
});
});
</script>
非常感谢你的帮助!!
这是我已撤销的代码,感谢您的帮助
$(document).ready( function() {
$('INPUT[type=minicolors]').on('change', function() {
var input = $(this),
hex = input.val();
$('body').css("background-color",hex);
});
});
这次没有错误,但是没有用,我在做什么错?
再次感谢您的帮助!
最佳答案
更新:
根据用户反馈,MiniColors 2.0的API已恢复为1.0的类似方法。请在GitHub上查看更新的文档。
Cory来自ABS(插件作者)。 Jason和icktooday都是正确的。 MiniColors 2.0在几天前才进入Beta版,API确实发生了变化。 99.9%的开发人员将只需要包含MiniColors JavaScript文件并创建一个输入控件,如下所示:
<input type="minicolors" />
首次加载时,该插件将自动启用页面上的所有控件。对于那些需要动态添加控件的用户,只需插入
<input>
元素,然后调用init
方法:$.minicolors.init();
无需指定选择器。该插件可让您以最小的开销尽可能地轻松。有关更多详细信息,请参阅文档中的Utility Functions。
至于您的新错误,您需要:
将更改事件绑定到原始输入元素
将
background-color
更改为backgroundColor
使用输入元素的
value
(和data-opacity
属性(如果启用了不透明性))$('INPUT[type=minicolors]').on('change', function() {
// This shows how to obtain the hex color and opacity (when in use)
var hex = $(this).val(),
opacity = $(this).attr('data-opacity');
$('BODY').css('backgroundColor', hex);
});
注意:虽然MiniColors的先前版本是基于元素的,但我认为将前瞻性方法用于2.0更合适。 99.9%的用户仅需要包括MiniColors JavaScript文件并添加
minicolors
类型的输入元素。对于那些需要其他功能的人,这只是一个额外的函数调用来更新事物。请帮助测试MiniColors 2.0并将任何错误报告,功能请求等提交到GitHub上的主页。