可能的重复:
JQuery 函数不适用于 Mac 上的 Chrome,但适用于 Win 7 上的 Chrome 和所有其他浏览器
我有一个选择选项列表
<div class="social-option">
<select name="hex_theme_options[social-service-1]">
<option selected="selected" value="facebook">facebook</option>
<option value="0"></option>
<option value="twitter">twitter</option>
<option value="linkedin">linkedin</option>
<option value="e-mail">e-mail</option>
<option value="phone">phone</option>
<option value="instagram">instagram</option>
<option value="flickr">flickr</option>
<option value="dribbble">dribbble</option>
<option value="skype">skype</option>
<option value="picasa">picasa</option>
<option value="google-plus">google-plus</option>
<option value="forrst">forrst</option>
</select>
</div>
为什么这在 PC 上有效但在 mac 上不行?
$('.social-option select').on('click', function () {
alert('bla');
});
http://jsfiddle.net/4BBcZ/
UPDATE
我需要使用on click事件,不是改变时.
Use the change
事件代替:
$('.social-option select').on('change', function () {
alert('bla');
});
From 文档:
当元素的值发生变化时,更改事件会发送到元素。这
事件仅限于元素、盒子和
元素。对于选择框、复选框和单选按钮,该事件
当用户用鼠标进行选择时立即触发,
但对于其他元素类型,事件会被推迟到
元素失去焦点。
IIRC,click
活动适用于<option>
在 Firefox 中可以使用,但在 Chrome 中不起作用。最好、最受支持的活动是change
.
要获取所选选项的值,只需使用.val()
就像使用任何其他输入一样:
$('.social-option select').on('change', function () {
alert($(this).val());
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)