Raj_89ソリューションは、Kevin Swartsがコメントで述べたように、有効なオプションに最も近いものです。これは、企業顧客の多数が問題となるIEを破る予定です(また、IEにコードを作成しないことをクライアントに伝える"理由は"あなたの上司を幸せにする可能性が低いため);))。
私はここで問題を抱えています。「onmousedown」イベントはIEでうまくいっているので、ユーザーが最初にドロップダウンをクリックしたときのデフォルトを防ぐことです。それは、これは我々がこれを行う唯一の時間であることが重要です:ユーザーは自分の好きなものを作るときに我々は、次のクリックでdefultを防ぐならば、のonchangeイベントが発生しません。
私たちは素敵なドロップダウンを取得するこの方法で、フリッカは、何のIEを破壊 - ちょうど良く、少なくともIE10で、最大...働かない、他のすべての主要なブラウザの最新relases。 https://jsfiddle.net/88cxzhom/27/
さらにいくつかのものは注意すべき: 1)絶対位置とzインデックスを設定するオプションを表示する場合、他の要素を移動回避するために有用である。ここで
<p>Which is the most annoing browser of them all:</p>
<select id="sel" size = "1">
<option></option>
<option>IE 9</option>
<option>IE 10</option>
<option>Edge</option>
<option>Firefox</option>
<option>Chrome</option>
<option>Opera</option>
</select>
はフィドルあります。 2)使用「は、currentTarget」プロパティ - これはすべてのブラウザ間での選択要素になります。 IEでは 'target'が選択されますが、残りの部分は実際にはオプションで作業できるようになります。
これは誰かを助けることを望みます。
ありがとうございます!残念ながら、size属性はすべてのxオプションを表示するため、私が探していたものではありません。私はこのような少し厄介な問題のためにjavascriptを避けようとしていました。しかし、私は他の選択肢がないようです。 – medowlock
yup。すべての ''
ブラウザメーカーがWebComponentsやその他のものを構築していないことを、私は決して理解できません。どんな開発者も、「私の選択したドロップダウンリストに表示される要素の数を制限したいと思っています...その醜いリスト - yのことはうまくいくでしょう! – Petrov