当有人点击'.ui-input-note'输入框时,我希望“#btnContainer”出现在它下面。在桌面上工作,这非常有效:
HTML
<div id="textInput"/>
<div id="btnContainer"/>
CSS
#btnContainer{
height:44px;
display: none;
}
JS
$('#textInput').append(
$('<input>').addClass('ui-input-note').attr('placeholder', 'Notes')
);
$('#btnContainer').append(
$('<button id="submitBtn" data-role="button" data-inline="true" data-mini="false" data-theme="b">Save Note</button>')
);
$('.ui-input-note').focus(function() {
$( "#btnContainer" ).slideDown({
duration: 500 ,
easing: 'jswing'
});
});
但是在移动设备上,slideDown很慢而且很跳跃。我正在使用HTC One,所以我认为它不会在任何其他手机上运行得更顺畅。我试过这个plugin,这解释了'jswing',但没有快乐。
所以我试着这样做,但它不起作用。有人会有任何意见或建议吗?要么我的新功能不起作用,要么如何让slideDown在移动设备上运行更顺畅。
$('.ui-input-note').focus(function() {
$( "#btnContainer" ).animate({
display: 'block',
left:'250px',
opacity:'0.5',
height:'150px',
width:'150px'
});
});
干杯
答案 0 :(得分:1)
您是否尝试 CSS3 ?
JS:
$(document).on('focus', '.ui-input-note', function() {
$('#btnContainer')addClass('large');
});
的CSS:
#btnContainer{height:44px; display:none; transition:1s ease; -moz-transition:1s ease; -webkit-transition:1s ease; -o-transition:1s ease; -ms-transition:1s ease;}
#btnContainer.large{display:block;height:150px;}
希望有所帮助。