在Chrome中使用新的颜色“input=”元素会触发一个新的弹出对话框:
我想知道是否有一个事件处理程序在此预览窗口中的值发生更改时立即触发,而不仅仅是在单击"OK“之后触发
jQuery('#colorinput').on('change', function() { // fires only after clicking OK
jQuery('#main').css('background-color', jQuery(this).val());
});
发布于 2014-09-04 01:20:58
你要找的是input
event。
你的modified fiddle现在应该可以在所有(像样的)浏览器中工作了:
$('#colorinput').on('input', function() { ... } )
发布于 2014-09-04 01:34:58
你真的想要每个HTML规范的输入事件。没有什么可以保证在输入元素失去焦点之前触发的更改事件。
只要用户修改了控件的数据,就会触发输入事件。当提交值时,如果对控件有意义,或者当控件失去焦点时,就会触发change事件。
发布于 2013-01-17 19:07:52
要获取颜色输入的值,应使用w3school中提供的事件属性onchange
<input name="eventColor" type="color" onchange="getColorVal(eventColor.value)"/>
并定义一个处理事件的函数
function getColorVal(colorValue){
alert(colorValue);
}
https://stackoverflow.com/questions/13805611
复制相似问题