1

クリックする代わりに onmouseover で選択リストをドロップダウンするにはどうすればよいですか。それをエミュレートするためにJavaScriptで選択リストをクリックすることはできません。例えば:onmouseover="(this.click())"

また、JavaScript で「選択リストのサイズ」=「その長さ」を設定すると、隣接するレイアウトが変更されるため、クリック イベントが正確にエミュレートされません。z-index と position 属性を使用してみましたが、役に立ちません。

4

4 に答える 4

3

これは古いdevshedの投稿からの巧妙なハックです

選択ボックスを展開onMouseOver-DevShed

実際の例を次に示します。

http://jsfiddle.net/87nyG/1


<select>個人的には、要素をハッキングするのではなく、サードパーティまたはカスタムソリューションを好みます

于 2011-04-11T20:34:28.137 に答える
1

役立つかもしれません: https://developer.mozilla.org/en/DOM/event.initMouseEvent

編集。いいえ、そうではありません:(

于 2011-04-11T20:23:20.707 に答える
0

ネイティブのHTMLSelectを使用して、要求していることを実行することはできません。サードパーティのオプションを検索する必要があります。

可能性については、こちらをご覧ください:http: //jquery.sanchezsalvador.com/page/jquerycombobox.aspx

于 2011-04-11T20:15:18.023 に答える
0

この問題に遭遇しました。すでに回答されていることは知っていますが、よりエレガントなソリューションを探している人がここに来たら、jquery でこれを行うことができます。

$("#select_id").hover(
    function(){
        $(this).attr('size',13); //My select had months, so 13 was appropriate. obviously you can change this
        $(this).css('position','absolute'); //prevents sibling elements from being pushed down
    },
    function(){
        $(this).attr('size',0); //resets select on mouseout
    }
);

selectこれにより、HTML 内のタグの「ハッキング」が防止されます。

于 2013-09-27T19:59:27.887 に答える