|
auteurs : simone.51, denisC |
Un problème fréquent avec le javascript c'est que son comportement n'est pas le
même sur tous les navigateurs. Certaines fonctions n'existe que sur certains
navigateurs, certaines fonctions ont même des comportements différents.
Le script suivant permet la detection de la pluspart des navigateurs actuels:
var agt=navigator.userAgent.toLowerCase();
var is_opera = (agt.indexOf("opera") != -1);
var is_mac = (agt.indexOf("mac")!=-1);
var is_konq = (agt.indexOf('konqueror') != -1);
var is_safari = ((agt.indexOf('safari')!=-1)
&&(agt.indexOf('mac')!=-1))?true:false;
var is_khtml = (is_safari || is_konq);
var is_gecko = ((!is_khtml)&&(navigator.product)
&&(navigator.product.toLowerCase()=="gecko"))?true:false;
var is_fb = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
(agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1) &&
(agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1) &&
(is_gecko) && (navigator.vendor=="Firebird"));
var is_fx = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
(agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1) &&
(agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1) &&
(is_gecko) && ((navigator.vendor=="Firefox")||(agt.indexOf('firefox')!=-1)));
var is_moz = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
(agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1) &&
(agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1) &&
(is_gecko) && (!is_fb) && (!is_fx) &&
((navigator.vendor=="")||(navigator.vendor=="Mozilla")||(navigator.vendor=="Debian")));
var is_nav = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
&& (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
&& (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)
&& (!is_khtml) && (!(is_moz)) && (!is_fb) && (!is_fx));
var is_ie = ((appVer.indexOf('msie') != -1) && (!is_opera) && (!is_khtml));
|
Il suffit ensuite de tester la valeur de is_.... Une technique
aujourd'hui plus utilisée est celle dite d'Object Detection qui se
concentre sur une fonction plutot que sur le navigateur.
|
|
auteur : simone.51 |
En javascript, il y'a l'objet history qui permet de gérer l'historique du navigateur.
Pour aller à la page précédente:
- history.back();
- history.go(-1);
Pour aller la page suivante:
|
|
auteur : simone.51 |
Ce n'est pas possible....
On peut toujours essayer de le bloquer en ouvrant des fenetres avec window.open.
Le bouton précedent sera grisé, mais on pourra toujours revenir en arrière quoi
qu'il en soit.
|
|
auteur : Jérôme |
Il n'est pas possible de récupérer ces événements en javascript.
|
|
auteur : simone.51 |
Pour accéder à une url, pour faire une redirection par exemple, il suffit de faire :
window.location.replace('page.html');
|
|
|
auteurs : simone.51, JBrek |
Ce code ne fonctionne que sous Internet Explorer
La fonction qui permet la copie :
function copyclipboard(intext) {
window.clipboardData.setData('Text', intext);
}
|
Le lien qui permet la copie :
<a href="javascript:copyclipboard('Texte à copier');">lien</a>
|
|
|
auteurs : BrYs, denisC |
Il faut pour cela utiliser les propriétés "screen" suivantes :
- height pour la hauteur
- width pour la largeur
Entre les balises <head></head> : hauteur = screen.height;
largeur= screen.width;
resol = largeur+ " x " + hauteur;
alert(resol);
|
|
|
auteur : BrYs |
window.defaultStatus='texte que vous voulez';
|
|
|
auteur : simone.51 |
On ne peut pas mais par contre, il y'a toujours une solution de rechange :
Mettre un calque contenant une image par dessus le bouton, mais bon...
|
|
auteur : simone.51 |
<a href="lien1.html" onClick="window.open('lien2.html','ma_fenetre','copyhistory=0')"
target="_self">cliquez ici</a>
|
|
|
auteurs : simone.51, denisC |
C'est tout simple :On ne peut pas !!!
Toutes les méthodes existant actuellement sont de vagues artifices qui n'ont aucun effet sur le fond du problème.
|
|
auteur : simone.51 |
Pour identifier la langue par défaut du navigateur, il ya deux propriétées selon que vous ayez Netscape (Mozilla,...) ou Internet Explorer
Pour IE :
Pour NE :
|
|
auteur : simone.51 |
Ce code permet de récupèrer des paramètres passés dans une url par le biais d'un lien ou par la méthode get
<script language='javascript'>
var nom=new Array();
var valeur=new Array();
param = window.location.search.slice(1,window.location.search.length);
first = param.split("&");
for(i=0;i<first.length;i++){
second = first[i].split("=");
nom[i] = second[0];
valeur[i] = second[1];
}
</script>
|
Le tableau nom contient le nom des paramètre et le tableau valeur contient les valeurs de ces paramètres.
|
|
auteur : Patrick Beaudoin |
1. Créer un cookie
function SetCookie(name, value, days) {
var expire = new Date ();
expire.setTime (expire.getTime() + (24 * 60 * 60 * 1000) * days);
document.cookie = name + "=" + escape(value) + "; expires=" +expire.toGMTString();
}
|
2. Récupérer la valeur d'un cookie
function GetCookie(name) {
var startIndex = document.cookie.indexOf(name);
if (startIndex != -1) {
var endIndex = document.cookie.indexOf(";", startIndex);
if (endIndex == -1) endIndex = document.cookie.length;
return unescape(document.cookie.substring(startIndex+name.length+1, endIndex));
}
else {
return null;
}
}
|
3. Supprimer un cookie
function DeleteCookie(name) {
var expire = new Date ();
expire.setTime (expire.getTime() - (24 * 60 * 60 * 1000));
document.cookie = name + "=; expires=" + expire.toGMTString();
}
|
|
|
auteur : denisC |
C'est très simple, on ne peut pas.
C'est l'utilisateur qui a le choix de ce qu'il veux imprimer,
en particulier au niveau des pieds de pages / entetes de pages, nombre de copies,
orientation des pages, impression des images et couleurs de fonds, ...
Firefox est très clair sur le point, et aucune action n'est possible par JavaScript
sur ces points (en dehors du style de la page, bien entendu).
Sur IE, il reste la possiblité d'utiliser certains ActiveX pour parametrer
l'impression, mais cette solution est à éviter autant que possible.
|
|
auteur : denisC |
Dans une pop-up, sous Firefox, même avec status=no,
la barre de statut apparait, pourquoi?
Simplement, parceque d'après la doc developpeur de Mozilla:
status :
Si cette option est mise à yes, alors la nouvelle fenetre aura une barre de statut.
L'utilisateur peut forcer l'affichage de la barre de statut.
La configuration par défaut est de forcer la présence de la barre de statut.
|
Par défaut, l'utilisateur force la présence de la barre de statut.
Ce comportement peut être modifié dans le menu Options>Contenu>Javascript Avancé
mais seul l'utilisateur peut le décider.
|
lien : documentation developpeur Mozilla
|
|
auteur : BrYs |
Il n'y a malheureusement pas grand chose à faire dans ce cas. La meilleure
façon de faire est d'utiliser les balises html:
<noscript>
Attention, le javascript est désactivé et vous ne pourrez bénéficier
de toutes les fonctionnalités de cette page.
</noscript>
|
|
|
auteur : SpaceFrog |
La façon normale de faire est d'utiliser une balise meta, mais cela peut être difficile
à cause des différents navigateurs, et du besoin de configuration du serveur.
Voici une petite astuce, indépendante du navigateur, basée sur le fait que si
l'on envoie un paramètre dans l'adresse, le navigateur repasse par le serveur.
Il suffit donc de générer un paramètre aléatoire que l'on accole à l'adresse en question.
Par exemple, pour forcer la mise à jour d'une image:
MonImage.src='fichierImage.jpg?'+new Date()*Math.random()
|
|
Consultez les autres F.A.Q's
Les sources présentées sur cette page sont libres de droits
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une œuvre intellectuelle protégée par les droits d'auteur.
Copyright © 2004 Developpez Developpez LLC.
Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne
peut être faite de ce site ni de l'ensemble de son contenu : textes, documents
et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez
selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.