onclick=“location.href='link.html'” ne charge pas la page dans Safari
Je ne peux pas obtenir onclick="location.href='link.html'"
pour charger une nouvelle page dans Safari (5.0.4).
Je suis la construction d'un drop-down menu de navigation à l'aide de la <select>
et <option>
des balises HTML. Je suis l'aide de la onclick
gestionnaire de chargement d'une nouvelle page, à la suite d'une option de menu est cliqué, mais rien ne se passe dans Safari. (J'ai testé avec succès dans FF & Opéra.) Je sais qu'il y a beaucoup de onclick
bugs dans Safari, mais je n'ai pas trouvé de solutions à ce problème spécifique.
Vous pouvez voir un exemple de mon code ci-dessous:
<select>
<option onclick="location.href='unit_01.htm'">Unit 1</option>
</select>
et
<select>
<option onclick="location.href='#5.2'">Bookmark 2</option>
</select>
Je n'ai pas (et préfèrent ne pas) faire du javascript intégré dans la section head de mon code HTML. Je suis en train d'élaborer la page pour quelqu'un qui ne sait pas comment utiliser javascript--de sorte que le plus simple, le code, le mieux).
Ce code JavaScript prendre l'option de menu cliquable dans tous les navigateurs? (Veuillez vérifier la compatibilité avec IE.)
- Si vous êtes à l'élaboration de la page pour quelqu'un qui ne connais pas le JavaScript, il est préférable de le garder hors de la voie de l'HTML par exemple: dans une autre
.js
fichier? - Je ne suis pas répondre à la question parce que je suis en désaccord avec la prémisse. Sémantiquement, un menu de navigation est une liste de liens, pas une option qui est choisie, et j'en œuvre déroulant multi-niveau de menus
<ul><li><a href="...">Item</a></li>
etc. La plupart de navigation tutoriels que j'ai vu également utiliser cette stratégie. Le mien aussi travailler en pur CSS, sans même avoir besoin de JavaScript, bien que je l'enrichir davantage avec JS. - P: C'est bien d'être en désaccord, mais pourquoi ne pas poster votre code comme une alternative pour remédier au problème?
- parce que j'ai été châtié et downvoted pour "ne pas répondre à la question qui a été posée" de trop nombreuses fois. Cependant, il ne fait pas de mal de point à la classique Suckerfish Dropdowns article qui utilise
<ul> <li>
et pur CSS, depuis le chemin du retour en 2003. - P: je ne vois Personnellement la promotion de bonnes pratiques de la part-et-parcelle de contribuer à la communauté - c'est une honte de ne pas tout le monde le voit de cette façon! 🙂
- P: Merci de poster une méthode alternative. Je vais au moins l'utiliser pour les non-JS de secours.
- Je suis d'accord, et (avec un peu d'appréhension) a fait de même aujourd'hui et il s'est avéré bien, donc je suis rampant en arrière. Mon code pour le niveau 3
Menubar/Menus/Items+(Submenus/Items)
a un peu de CSS pour le post, et j'ai senti il y a suffisamment d'articles déjà là. Merci pour les encouragements. - Juste mettre des ";" après le javascript de la commande que vous souhaitez exécuter.
Vous devez vous connecter pour publier un commentaire.
Utiliser jQuery.....Je sais que vous dites que vous essayez d'enseigner à quelqu'un de javascript, mais de lui apprendre un nettoyeur de technique... par exemple, je pourrais:
Et avec un peu de jQuery, vous pouvez faire:
Discrète, et avec la séparation de la logique et de l'INTERFACE utilisateur.
$(document).ready(function(){ }
si vous allez l'insérer dans l'en-tête du code html. Découvrez cette page pour plus de détails.</select>
pas<select>
Essayez ceci:
A bien fonctionné pour moi sous Firefox, Chrome et IE (wow!!)
Donner à ce déplacement:
Vous pouvez essayer ceci:
Cela va créer un bouton à l'intérieur d'un lien et il fonctionne sur n'importe quel navigateur
J'ai eu le même message d'erreur. Assurez-vous que vous n'avez pas de
<input>
,<select>
, etc.name="location"
.essayer
HTML: