我在iPhone上使用jQuery click事件和safari时遇到了麻烦。在Windows上,当我打开选择框时会触发该事件,而当我单击某个选项时会再次触发该事件。在iPhone上的Safari上,只有在我打开选择框时才会触发它。
JavaScript代码T' m使用如下所示:
$('select').click(function() {
if ($(this).attr("data-click") == 1) {
var option = $(this).find('option:selected').val();
alert(option);
$(this).attr("data-click", 0);
} else {
$(this).attr("data-click", 1);
}
});
$('select').focusout(function() {
$(this).attr("data-click", 0);
});
这是html代码:
<select>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
重点是,我无法使用$('select').change()
因为我想在用户打开选择框时触发alert(option);
,甚至当他点击之前选择的相同选项时。
I created a JSFiddle for you to help you understand the problem.当您打开选择框并单击选项时,它应该提醒项目。