Как удалить список выбора с помощью 'onmouseover'? - PullRequest
1 голос
/ 12 апреля 2011

Как я могу раскрыть список выбора с помощью onmouseover вместо того, чтобы щелкать по нему.Выбрать список нельзя щелкнуть в JavaScript, чтобы подражать этому.Например: onmouseover="(this.click())"

Также установка «размер списка выбора» = «его длина» в javascript не точно подражает событию щелчка, потому что соседний макет изменяется.Я пытался использовать z-index и атрибуты позиции, но это не помогло.

Ответы [ 4 ]

3 голосов
/ 12 апреля 2011

Вот умный хак из старого поста, написанного в дэшах

Выберите поле развернуть на MouseOver - Dev Shed

вот пример в действии:

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


Лично я предпочел бы стороннее или нестандартное решение вместо взлома <select> элемента

1 голос
/ 12 апреля 2011

Может помочь: https://developer.mozilla.org/en/DOM/event.initMouseEvent

редактировать. Нет, это не так: (

0 голосов
/ 27 сентября 2013

Просто столкнулся с этой проблемой.Я знаю, что на этот вопрос уже дан ответ, но если кто-нибудь придет сюда в поисках более элегантного решения, вы можете сделать это с помощью 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.

0 голосов
/ 12 апреля 2011

Невозможно сделать то, что вы просите, используя нативный HTML Select.Вам придется искать сторонние варианты.

Взгляните на возможность здесь: http://jquery.sanchezsalvador.com/page/jquerycombobox.aspx

...