webentwicklung-frage-antwort-db.com.de

onclick = "location.href = 'link.html'" lädt keine Seite in Safari

Ich kann nicht erlangen onclick="location.href='link.html'", um eine neue Seite in Safari (5.0.4) zu laden.

Ich erstelle ein Dropdown-Navigationsmenü mit dem <select> und <option> HTML-Tags. Ich benutze den onclick -Handler, um eine neue Seite zu laden, nachdem auf einen Menüpunkt geklickt wurde, aber in Safari passiert nichts. (Ich habe erfolgreich in FF & Opera getestet.) Ich weiß, dass es in Safari viele onclick Fehler gibt, aber ich habe keine Lösungen gefunden, die dieses spezielle Problem beheben.

Unten sehen Sie ein Beispiel meines Codes:

<select>
    <option onclick="location.href='unit_01.htm'">Unit 1</option>
</select>

und

<select>
    <option onclick="location.href='#5.2'">Bookmark 2</option>
</select>

Ich möchte (und bevorzuge) kein Javascript im Kopfbereich meines HTML-Dokuments eingebettet haben. Ich entwickle die Seite für jemanden, der nicht weiß, wie man JavaScript verwendet - je einfacher der Code, desto besser .)


Welcher JavaScript-Code würde das Menüelement in allen Browsern anklickbar machen? (Bitte überprüfen Sie die Kompatibilität mit dem Internet Explorer.)

38
Brandon Lebedev

Verwenden Sie jQuery ... Ich weiß, Sie sagen, Sie versuchen, jemandem Javascript beizubringen, bringen ihm aber eine sauberere Technik bei ... Ich könnte zum Beispiel:

<select id="navigation">
    <option value="unit_01.htm">Unit 1</option>
    <option value="#5.2">Bookmark 2</option>
</select>

Und mit ein wenig jQuery können Sie Folgendes tun:

$("#navigation").change(function()
{
    document.location.href = $(this).val();
});

Unauffällig und mit sauberer Trennung von Logik und Benutzeroberfläche.

34
Matthew Abbott

Versuche dies:

onclick="javascript:location.href='http://www.uol.com.br/'"

Hat in Firefox gut funktioniert, Chrome und IE (wow !!)

113
Rafael Zottesso

Probieren Sie es aus:

<option onclick="parent.location='#5.2'">Bookmark 2</option>
5
Richard Hedges

Sie können dies versuchen:

 <a href="link.html">
       <input type="button" value="Visit Page" />
    </a>

Dadurch wird eine Schaltfläche in einem Link erstellt und funktioniert in jedem Browser

3
garatu

Ich hatte den gleichen fehler Stellen Sie sicher, dass Sie keine <input>, <select>, etc. name="location".

2
Jacob NP

versuchen

<select onchange="location=this.value">
    <option value="unit_01.htm">Unit 1</option>
    <option value="#5.2" selected >Bookmark 2</option>
</select>
0