window.location.hrefn'est pas une méthode, c'est une propriété qui vous indiquera l'emplacement actuel de l'URL du navigateur. La modification de la valeur de la propriété redirigera la page.
window.open()est une méthode à laquelle vous pouvez transmettre une URL que vous souhaitez ouvrir dans une nouvelle fenêtre. Par exemple:
Exemple de window.location.href:
window.location.href ='http://www.google.com';//Will take you to Google.
Exemple avec window.open ():
window.open('http://www.google.com');//This will open Google in a new window.
Information additionnelle:
window.open()peut être passé des paramètres supplémentaires. Voir: tutoriel window.open
La norme dit probablement que window.location.hrefc'est une propriété, pas une méthode, mais Internet Explorer (version 10 au moins) vous permet également de traiter hrefcomme une méthode. Je l'ai vu fonctionner, uniquement dans IE10, sur une page que j'ai utilisée. C'est probablement pourquoi le demandeur appelait hrefune méthode. Voir la question de l' incompatibilité d'IE avec window.location.href . Mais oui, il vaut mieux l'utiliser hrefcomme une propriété, qui fonctionnera dans n'importe quel navigateur, y compris IE .
Rory O'Kane
5
@ RoryO'Kane, cette question a été posée en 2011. Je doute que l'utilisateur fasse référence à IE 10.
James Hill
9
Vrai. Mais je pense qu'il est probable, mais pas certain, que les anciennes versions d'IE soient traitées de window.location.hrefla même manière. Après tout, les nouvelles versions d'iE sont généralement davantage basées sur des normes, pas moins. Donc, si IE10 ne respecte toujours pas la norme, les anciennes versions l'ont probablement fait aussi.
Rory O'Kane
32
window.open ouvrira un nouveau navigateur avec l'URL spécifiée.
window.location.href ouvrira l'URL dans la fenêtre dans laquelle le code est appelé.
Notez également qu'il window.open()s'agit d'une fonction sur l'objet fenêtre lui-même alors qu'il window.locations'agit d'un objet qui expose une variété d' autres méthodes et propriétés .
window.open est une méthode; vous pouvez ouvrir une nouvelle fenêtre et la personnaliser. window.location.href n'est qu'une propriété de la fenêtre actuelle.
Utilisez window.location.href. Définissez la propriété href sur le href d'une autre page.
2. Ouvrez le lien dans la fenêtre nouvelle ou spécifique.
Utilisez window.open (). Passez les paramètres selon votre objectif.
3. Connaître l'adresse actuelle de la page
Utilisez window.location.href. Récupère la valeur de la propriété window.location.href. Vous pouvez également obtenir un protocole spécifique, un nom d'hôte, une chaîne de hachage à partir de l'objet window.location.
Réponses:
window.location.href
n'est pas une méthode, c'est une propriété qui vous indiquera l'emplacement actuel de l'URL du navigateur. La modification de la valeur de la propriété redirigera la page.window.open()
est une méthode à laquelle vous pouvez transmettre une URL que vous souhaitez ouvrir dans une nouvelle fenêtre. Par exemple:Exemple de window.location.href:
Exemple avec window.open ():
Information additionnelle:
window.open()
peut être passé des paramètres supplémentaires. Voir: tutoriel window.openla source
window.location.href
c'est une propriété, pas une méthode, mais Internet Explorer (version 10 au moins) vous permet également de traiterhref
comme une méthode. Je l'ai vu fonctionner, uniquement dans IE10, sur une page que j'ai utilisée. C'est probablement pourquoi le demandeur appelaithref
une méthode. Voir la question de l' incompatibilité d'IE avec window.location.href . Mais oui, il vaut mieux l'utiliserhref
comme une propriété, qui fonctionnera dans n'importe quel navigateur, y compris IE .window.location.href
la même manière. Après tout, les nouvelles versions d'iE sont généralement davantage basées sur des normes, pas moins. Donc, si IE10 ne respecte toujours pas la norme, les anciennes versions l'ont probablement fait aussi.window.open
ouvrira un nouveau navigateur avec l'URL spécifiée.window.location.href
ouvrira l'URL dans la fenêtre dans laquelle le code est appelé.Notez également qu'il
window.open()
s'agit d'une fonction sur l'objet fenêtre lui-même alors qu'ilwindow.location
s'agit d'un objet qui expose une variété d' autres méthodes et propriétés .la source
window.open est une méthode; vous pouvez ouvrir une nouvelle fenêtre et la personnaliser. window.location.href n'est qu'une propriété de la fenêtre actuelle.
la source
Il existe déjà des réponses qui décrivent la propriété window.location.href et la méthode window.open () .
Je vais passer par l'utilisation objective:
1. Pour rediriger la page vers une autre
Utilisez window.location.href. Définissez la propriété href sur le href d'une autre page.
2. Ouvrez le lien dans la fenêtre nouvelle ou spécifique.
Utilisez window.open (). Passez les paramètres selon votre objectif.
3. Connaître l'adresse actuelle de la page
Utilisez window.location.href. Récupère la valeur de la propriété window.location.href. Vous pouvez également obtenir un protocole spécifique, un nom d'hôte, une chaîne de hachage à partir de l'objet window.location.
Voir Objet de localisation pour plus d'informations.
la source
window.open ()
ouvrira une nouvelle fenêtre, tandis quewindow.location.href
la nouvelle URL s'ouvrira dans votre fenêtre actuelle.la source
L'
window.open
URL s'ouvrira dans le nouvel onglet du navigateurL'
window.location.href
URL s'ouvrira dans l'onglet actuel (à la place, vous pouvez utiliserlocation
)Voici un exemple de violon (dans les extraits SO, window.open ne fonctionne pas)
Afficher l'extrait de code
la source