1

ドロップダウンに10個のアイテムがあり、ドロップダウンリストを開いたときに最初の5個だけを表示したいのですが、残りのアイテムはスクロールしたままになります。

のサイズを制御するための次のコードがありますJS

$(function(){
  $("#myList").click(function(){
    $(this).attr('size', '5');
  });
});

以下を設定するHTML..。

<select size="5">
  <option value=""></option>
  ...
</select>

ドロップダウンが常にデフォルトとして5つのアイテムで表示されるようになり、ブラウザはこれを独自の方法で処理する可能性があるため、を介して実行することを考えJSました。

これの問題は、5つのアイテムで開くが、ページが更新されるまで(明らかに)、通常のドロップダウンのように自動的に閉じないことです。お知らせ下さい。

4

2 に答える 2

3

複数のアイテムが表示されるようにリストを変更し、ホバーが削除されたときにのみ選択されたものを表示することができます。

$(document).ready(function(){

$("#mylist").hover(function(){

$(this).attr('size', '5');
},function(){
 $(this).removeAttr("size");   
});

});​

-デモを見る-

于 2012-05-10T09:48:41.780 に答える
0

ただし、受け入れられたソリューションは問題なく機能しましたが、 1.9より前のjQueryバージョンでのみ機能しました。これは、今後このバージョンhoverで非推奨になったためです。

ただし、新しいバージョンに切り替えたくない場合は、jQuerymigrateプラグインを使用してmakehover()およびその他の非推奨の機能を使用できます。

jQueryつまり、v1.9+の上位バージョンの代替ソリューション

$(function(){
  $("#myList").on({
    mousedown: function(){
      $(this).attr('size', '5');
    },

    mouseleave: function(){
      $(this).removeAttr('size');
    }
  });
});

これが動作中のデモです。

于 2015-10-08T07:10:47.047 に答える