1

ボタンがあります:

<a  data-role="button" data-transition="none"
data-theme="b" onclick="ShowInput();" data-icon="forward" data-iconpos="left">
</a>

ボタンをクリックすると、入力が下にスライドします。

function ShowInput() {
    $('#IdIn').slideDown("slow");
}

私の入力:

<input placeholder="xxx" name="NameIn" id="IdIn" value="" type="text">

スライドダウンは機能しますが、入力のプレースホルダー「xxx」が表示されません

なぜ?

4

2 に答える 2

2

ここでの問題は、入力要素がそれを含めるのに十分な大きさでない場合、プレースホルダーが消えることです。また、後で高さを変更する必要がある場合は再表示されませんslideDown()

これがクロム固有のバグなのか、それとも予想どおりの動作なのかはわかりません。ただし、アニメーションの完了時に style 属性を削除して要素を再描画するとうまくいくようです: http://jsfiddle.net/QYp9Y/

$('#IdIn').slideDown("slow", function() {
    $(this).removeAttr('style').show();
});
于 2012-12-03T08:58:13.963 に答える
0

入力要素を保持するコンテナを定義してから、入力の代わりにコンテナを表示/非表示にします。

<div id="IdContainer">
<input placeholder="xxx" name="NameIn" id="IdIn" value="" type="text">
</div>

次に、JavaScriptで、

function ShowInput() {
    $('#IdContainer').slideDown("slow");
}
于 2012-12-03T09:04:59.993 に答える