Wie automatisch zu erweitern html-select-Elements in javascript

Habe ich eine (versteckte) html-Objekt auswählen in mein Menü angebracht, um eine Menü-Taste link, so dass ein Klick auf den link zeigt die Liste, so dass Sie auswählen können.

Wenn Sie auf die Schaltfläche klicken, ruft es einige javascript zum anzeigen der <select>. Einen Klick entfernt von der <select> blendet die Liste. Was will ich wirklich machen-das ist die <select> erscheinen vollständig erweitert, als hätten Sie klickte auf die "down" - Pfeil, aber ich kann nicht damit es funktioniert. Ich habe versucht viele verschiedene Ansätze, kann aber nicht voran. Was mache ich derzeit:

<li>
    <a href="javascript:showlist();"><img src="/images/icons/add.png"/>Add favourite</a>
    <select id="list" style="display:none; onblur="javascript:cancellist()">
    </select>
</li>

//in code
function showlist() {
    //using prototype not jQuery
    $('list').show();  //shows the select list
    $('list').focus(); //sets focus so that when you click away it calles onblur()
}
  • Ich habe versucht, Sie anzurufen $('list').click().
  • Ich habe versucht Einstellung onfocus="this.click()"
    Aber in beiden Fällen bin ich immer

Uncaught TypeError: Object # hat keine Methode 'click'

ist als eigentümliche link-text sagt, dass es unterstützt die standard-Funktionen.

Ich habe versucht Einstellung der .size = .length die funktioniert, aber nicht das gleiche Aussehen (als wenn Sie klicken, um öffnen Sie das element, Sie schwebt über den rest der Seite.)

Hat jemand irgendwelche Vorschläge?

mögliche Duplikate von Öffnen Wählen Sie mit Javascript/jQuery?
möglich, Duplikat der Wie können Sie programmgesteuert sagen, dass ein HTML-SELECT-drop-down (z.B. durch mouseover)
Ähnliche Probleme - danke für den Hinweis, Sie aus - Sie scheinen mehr zu werden auf der Suche nach Möglichkeiten, um die Größe des Steuerelements (Breite und Höhe), in der Erwägung, dass alle, die ich tun möchte, ist, es zu haben scheinen "geöffnet".
die doppelte hingewiesen CMS genau Antworten: Sie können nicht. Sie müssen benutzerdefinierte HTML/JS.

InformationsquelleAutor xan | 2010-05-27

Schreibe einen Kommentar