当表单元素获得焦点时,我试图隐藏页脚。我还想在表单元素失去焦点时显示页脚,模糊事件应该处理。我无法在 jQuery Mobile 选择菜单表单元素上触发焦点或模糊事件。
这是我的表单元素之一的示例-
<select id="radiology-study-provider" class="selectList"></select>
这是应该将我的页脚隐藏在焦点上并在模糊上显示它的 jQuery 代码(它在 DOM 内部准备好) -
$('.selectList').change(function(){
console.log("the change event is firing");
});
$('.selectList').focus(function(){
$('div:jqmData(role="footer")').hide(); // hide the footer
});
$('.selectList').blur(function(){
$('div:jqmData(role="footer")').show(); // show the footer
});
奇怪的是,更改事件处理程序会触发,但焦点和模糊不会。
我已经在下面尝试过,但它不起作用 -
$('.selectList').on('focus', function(){
$('div:jqmData(role="footer")').hide(); // hide the footer
});
$('.selectList').on('blur', function(){
$('div:jqmData(role="footer")').show(); // show the footer
});
我也试过这个 -
$('.selectList').bind( "focus", function(event, ui) {
$('div:jqmData(role="footer")').hide(); // hide the footer
});
$('.selectList').bind( "blur", function(event, ui) {
$('div:jqmData(role="footer")').hide(); // hide the footer
});
我也尝试了 focusin() 和 focusout() 事件,但也没有成功。我尝试了几十个选择器(div.ui-select 就是其中之一)。我不认为这是我使用的选择器的问题。
我正在使用 jQuery Mobile 1.1.0 和 jQuery 1.7.1 - 我在http://jquerymobile.com/test/docs/forms/selects/events.html检查了 jQuery Mobile 选择菜单文档,与谷歌交谈,在这里搜索,并且找不到这个问题。