Jeg får ikke `onclick="location.href='link.html'"til å laste inn en ny side i Safari (5.0.4).
Jeg bygger en rullegardinmeny ved hjelp av HTML-taggene <select>
og <option>
. Jeg bruker onclick
-håndtereren til å laste inn en ny side etter at et menyelement er klikket, men ingenting skjer i Safari. (Jeg har testet i FF og Opera.) Jeg vet at det er mange onclick
-feil i Safari, men jeg har ikke funnet noen løsninger som løser dette spesifikke problemet.
Du kan se et eksempel på koden min nedenfor:
<select>
<option onclick="location.href='unit_01.htm'">Unit 1</option>
</select>
og
<select>
<option onclick="location.href='#5.2'">Bookmark 2</option>
</select>
Jeg har ikke (og foretrekker ikke) å ha noe javascript innebygd i head-delen av HTML-koden min. Jeg utvikler siden for noen som ikke vet hvordan man bruker javascript - så jo enklere kode, jo bedre).
;
Hvilken JavaScript-kode vil gjøre menyelementet klikkbart i alle nettlesere? (Kontroller kompatibiliteten med IE.)
Bruk jQuery....Jeg vet at du sier at du' prøver å lære noen javascript, men lær ham en renere teknikk ... for eksempel kunne jeg:
<select id="navigation">
<option value="unit_01.htm">Unit 1</option>
<option value="#5.2">Bookmark 2</option>
</select>
Og med litt jQuery kan du gjøre det:
$("#navigation").change(function()
{
document.location.href = $(this).val();
});
Diskret, og med ren separasjon av logikk og brukergrensesnitt.