0

当有人点击“.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,所以我认为它不会在任何其他手机上运行更流畅。我试过这个插件,它解释了'jswing'但没有乐趣。

所以我正在尝试这个,但它不起作用。有人有什么意见或建议吗?要么是为什么我的新功能不起作用,要么是如何让 slideDown 在移动设备上运行得更顺畅。

        $('.ui-input-note').focus(function() {
                $( "#btnContainer" ).animate({
                     display: 'block',
                     left:'250px',
                     opacity:'0.5',
                     height:'150px',
                     width:'150px'
                 });
         }); 

干杯

4

1 回答 1

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;}

希望有帮助。

于 2013-10-16T11:39:03.170 回答