Effectivement , de plus suite a mes recherches :
http://www.developpez.net/forums/d72...amique-script/
Pas pris en compte sous IE6
Effectivement , de plus suite a mes recherches :
http://www.developpez.net/forums/d72...amique-script/
Pas pris en compte sous IE6
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
Chez moi, sous IE6 l'ajout de script marche tres bien...
@olivierPa : Parce que si dans ce que tu ajoutes via innerHTML tu as du script ou des gestionnaires d'évenement, sous IE notamment tu risques d'avoir des problèmes. En fait, le tout est de connaitre les problèmes que innerHTML peut engendrer, et de voir si ca peut te concerner ou non.
@DoubleU:
Ok, je suis d'accord avec ce point de vue: utiliser innnerHTML tout en ayant conscience de ses limitations. Bon, a priori, il ne me serait pas venu a l'esprit d'ajouter du script javascript avec du innerHTML... mais c'est toujours mieux d'etre au courant. Merci.
olivier.
Donc dans le cas précis d'importation de script ou d'écriture de <style>, le document.write serait autorisé sous IE6?
Boa67 ,
autorisé oui ( d'ailleur la seule solution apparemment ) mais je crois que c'est le seul cas ou l'on doit utiliser document.write plutôt que le dom ...
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
Ca marche tres bien ca chez moi sous IE6, avec juste un alert dans le fichier chargé...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <html> <head> <script type="text/javascript"> function load() { var scr = document.createElement("script"); scr.src="test.js"; scr.type="text/javascript"; document.getElementsByTagName("head")[0].appendChild(scr); } </script> </head> <body> <script> load(); </script> </body> </html>
placé dans le body ( le fichier test est dans le même dossier ) ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <script type="text/javascript"> var MyHead = document.getElementsByTagName("head")[0]; var newScript = document.createElement('script'); newScript.type = 'text/javascript'; newScript.src = 'test.js'; MyHead.appendChild(newScript); //Appel de la méthode du fichier test(); </script>
en incluant le fichier directement ça marche ( avec une méthode :
dans le fichier test ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part function test(){ alert('test')}
si quelqu'un peut m'expliquer pourquoi
ps :test(); is undefined ...
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
Non ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <script type="text/javascript"> var MyHead = document.getElementsByTagName("head")[0]; var newScript = document.createElement('script'); newScript.type = 'text/javascript'; newScript.src = 'test.js'; MyHead.appendChild(newScript); //Appel de la méthode du fichier newScript.onload = function(){test();} </script>
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
D'un autre coté, c'est une bonne pratique ou un problème spécifique?
On peut effectivement se poser la question
Ceci dit, cela permet de rebondir sur une vraie bonne pratique :
- Attendre qu'un objet soit disponible avant de le manipuler !
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
j'aurais pensé a TOUT sauf a ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part newScript.onload = function(){test();}
Pour la bonne pratique pas certains car il s'agit plus d'une problème de rapidité d'exécution de code je pense...
Par contre pour la bonne pratique , il est plus propre de loader un script via le dom plutôt qu'un document.write() ...
On se fait un petit récapitulatif sur la première page ??
Bovino ?
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
Une dernière digression pour répondre au chomeur.
Ajouter un script dynamiquement provoque une requete HTTP pour aller chercher la ressource ciblée. Cette requête se fait de façon asynchrone pour ne pas freezer le browser durant le traitement, donc au moment ou tu fais
la requête a juste été envoyée, donc tu ne connais pas encore la méthode test.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 //Appel de la méthode du fichier test();
Tu ne pourras utiliser cette méthode qu'une fois le chargement complet du script terminé.
c'est plutôt logique en fait
à aucun moment je ne me suis posé la question du load du script a chargé ( aussi petit soit-il ... )
Merci pour le complément d'info doubleU et Bovino
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
Bonjour, je vais deriver un peu du sujet courant, mais une question me taraude...
Une des bonnes pratiques du javascript c'est de separer le code javascript du reste du code HTML. Avec une MasterPage on a besoin d'appeler a priori ces fichiers qu'une seule fois.
Seulement imaginons qu'un de mes scripts soit utilise que sur une seule page (heritant de ma MasterPage ). Je suppose que je dois inserer ma balise script seulement dans cette page et non dans la MasterPage, non ?
Si oui, alors comment connaitre le juste milieu ?
Exemple : si j'ai quatre pages sur 150 qui utilisent un javascript, que dois-je faire ?
Merci
inclure ton script QUE dans ces pages ^^
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
Ben oui mais jusqu'a quel point ? Si je te dis j'en ai 50 pages sur 75 tu me reponds quoi ?
Y a-t-il un moyen pour savoir comment optimiser tout ca ?
Ce n'est pas le sujet, tu peux ouvrir une discussion dans le forum asp.net.
J'ai hesite a ouvrir un sujet pour ca. Mais cette section, d'apres ce que j'ai compris de Bovino est la pour discuter des bonnes pratiques Javascript a utiliser.
Ce probleme n'en fait-il pas parti ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager