1

ここからオーバーレイjqueryを使用しています:

http://flowplayer.org/tools/overlay/index.html

オーバーレイ内に、次のような検索ボックスがあります。

<div class="simple_overlay" id="asearch">

    <div id="searchbox">
    <form id="amazonsearch" style='float:left;'>
        <input class="title" id="amazon-terms" style="width:400px;font-size:2em;">
        <button class="sexybutton sexysimple sexygreen">Search</button>

    </form>

    <div id="amazon-results"></div>

    </div><!--seachbox-->

</div><!--Overlay-->

私が実現したいのは、オーバーレイをロードすると、オーバーレイ内の検索ボックスがフォーカスされ、入力を開始できるようになることです。私はこれがうまくいくと思った:

$("a[rel]").overlay({

onLoad: function() {
$('#amazon-terms').focus(); 
}

});

しかし、それは何もしないようです。これが機能するため、イベントが発生していることがわかります。

$("a[rel]").overlay({

onLoad: function() {
alert('popup opened') 
}

});

ただし、このアラートが発生したとき、オーバーレイはまだ画面に表示されていないので、それが問題の一部なのだろうか? ドキュメントによると、 onLoad は「オーバーレイが完全に表示されたときに」起動する必要があります ( ref )

どんな助けでも大歓迎です!:)

ありがとう

トム

編集このコードは私がやりたいことを行いますが、上記のコードが機能しないのになぜこれが機能するのかについては賢明ではありません....

var triggers = $("a[rel]").overlay({
closeOnClick: false,
onLoad: function() {
$('input').focus();
}
});
4

1 に答える 1

1

このjQuery ツールのデモに基づく簡略化された例は、動作しているようです: http://jsfiddle.net/heikki/2Fkqu/

「ユーザー入力」ボタンをクリックしてオーバーレイを開きます。

于 2011-01-01T13:37:06.797 に答える