firefox et scripts

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
script

Message par script »

Merci benoit,

c'est ce que je vais faire un grand merci

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
script

Message par script »

rebonjour benoit

Y aurait il des commentaires conditionels specifiques firefox egalement
merci

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Non, à partir du moment où on utilise le DOM standard, il vaut plutôt mieux utiliser la détection d'objet (si tu ne maitrises pas suffisamment l'anglais j'ai aussi trouvé une vieille traduction).
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
script

Message par script »

merci benoit

je vais lire tout ca mais suis pas tres doue
pour l'instant, j'ai bricole mon site pour que le javascript desactive les visiteurs pouisse acceder qg m au texte avec noscript

Le coups des commentaires conditionels je ne connaissais pas
ce qui serait l'ideal pour moi serait de trouver un systeme equivalent lu par firefox dans la mesure ou pour moi la base est l'autre navigateur avec lequel mon site fonctionne
je suis entrais d'essayer avec ceci

<SCRIPT language="JavaScript">
function ancre()
{
if (navigator.appName == "Microsoft Internet Explorer")
{
donothing();
}
else
{
document.location="#monancre";
}}
</SCRIPT>


</head>
<body onLoad="ancre();">

<a name="monancre"> destination </a>

ca fonctionne malgre une erreur avec iexplore donothing() ne correspondant à rien... comment faire une fonction neutre, si iexplore detecte.. ,ne rien faire... je cherche

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
script

Message par script »

ca y est j'ai trouvé

<SCRIPT language="JavaScript">
function ancre()
{
if (navigator.appName != "Microsoft Internet Explorer")
{
document.location="#monancre";
}}
</SCRIPT>
</head>
<body onLoad="ancre();">
<a name="monancre"> destination </a>

en esperant que if (navigator.appName != "Microsoft Internet Explorer") est lu par tous les navigateurs....

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

script a écrit : if (navigator.appName == "Microsoft Internet Explorer")
{
Justement tu ne dois pas détecter le nom du navigateur mais ses fonctionnalités.
Par exemple :

Code : Tout sélectionner

if (document.location) {
document.location="#monancre"; 
}
:wink:
Bon, je ne suis pas sûr de l'utilité de détecter document.location, mais c'est l'idée :wink: [/code]

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.8) Gecko/20061108 Fedora/1.5.0.8-1.fc5 Firefox/1.5.0.8
script

Message par script »

salut calimo

tu sais moi je bidouille juste le javascript avec ce que je trouve sur internet, je n'ai jamais appris..

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
script

Message par script »

je crois q je pige ce que tu dis ok

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
script

Message par script »

non je pige pas

si je fais qq chose comme ca, ca ne me differencie pas les navigateurs

<SCRIPT language="JavaScript">
function ancre() {
if (document.location) {
document.getElementsByName("firefox")
document.location="#firefox";
}}
</SCRIPT>
</head>
<body onLoad="ancre();"> <a name="firefox"> destination </a>

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Ben non, parce que tu ne dois pas différencier les navigateurs mais leur comportement. Donc forcément que tu ne différencie pas les navigateurs :wink:

Comme je l'ai dit, document.location c'est du basique, et tous les navigateurs le supportent.

À partir de là, je ne vois pas trop pourquoi tu voudrais avoir un comportement différent dans MSIE, je crois que le problème est là :?
Que veux tu faire ? Quel est le but de cette redirection ? Je pense que c'est là la clé du problème plutôt que dans un script :wink:

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8
script

Message par script »

Bonjour à tous et joyeux noel

Je reviens avec un script qui ne fonctionne pas avec firefox, la redirection fonctionne mais pas l'explosion
quelqu'un saurait il quoi modifier pour quil fonctionne iexplore et firefox?

merci

<script>
// La largeur de l'image en pixels
var imgwidth=280
// La hauteur de l'image en pixels
var imgheight=222
// Le nom de l'image à faire exploser
var imgurl="image.gif"
// L'adresse de destination après l'explosion
var redirurl="page-suivante.htm"
// La position de l'image par rapport au bord gauche
var x_finalpos=450
// La position de l'image par rapport au bord supérieur
var y_finalpos=150
// Le nombre de blocs découpés par ligne
var x_slices=10
// Le nombre de ligne de découpe
var y_slices=10
// La vitesse d'explosion
// Speed of explosion
var pause=10
/////// Ne MODIFIEZ PLUS RIEN /////////////
var marginright
var width_slice=Math.floor(imgwidth/x_slices)
var height_slice=Math.floor(imgheight/y_slices)
var cliptop=0
var clipbottom=height_slice
var clipleft=0
var clipright=width_slice
var spancounter=0
var x_random=new Array()
var y_random=new Array()
var max_explsteps=15
var i_explsteps=0

function initiate() {
spancounter=0
for (i=0;i<=y_slices-1;i++) {
for (ii=0;ii<=x_slices-1;ii++) {
x_random[spancounter]=Math.ceil(240*Math.random())-120
y_random[spancounter]=Math.ceil(240*Math.random())-120
spancounter++
}
}
}

function explode_IE() {
spancounter=0
if (i_explsteps<=max_explsteps) {
for (i=0;i<=y_slices-1;i++) {
for (ii=0;ii<=x_slices-1;ii++) {
var thisspan=eval("document.all.span"+spancounter+".style")
thisspan.posLeft+=x_random[spancounter]
thisspan.posTop+=y_random[spancounter]
spancounter++
}
}
i_explsteps++
var timer=setTimeout("explode_IE()",pause)
}
else {
spancounter=0
for (i=0;i<=y_slices-1;i++) {
for (ii=0;ii<=x_slices-1;ii++) {
var thisspan=eval("document.all.span"+spancounter+".style")
thisspan.posLeft=-5000
spancounter++
}
}
clearTimeout(timer)
window.location=redirurl
}
}
</script>
</head>
<body onLoad="initiate()">
<script>
for (i=0;i<=y_slices-1;i++) {
for (ii=0;ii<=x_slices-1;ii++) {
marginright=screen.width+50
document.write("<span id='span"+spancounter+"' style='position:absolute;visibility:visible; left:"+x_finalpos+"px;top:"+y_finalpos+"px;clip:rect("+cliptop+"px "+clipright+"px "+clipbottom+"px "+clipleft+"px)'>")
document.write("<a href='javascript:explode_IE()'>")
document.write("<img src='"+imgurl+"' border='0'><BR>")
document.write("</a>")
document.write("</span>")
clipleft+=width_slice
clipright+=width_slice
spancounter++
}
clipleft=0
clipright=width_slice
cliptop+=height_slice
clipbottom+=height_slice
}
</script>

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727)
martin
Varan
Messages : 1074
Inscription : 21 janv. 2004, 16:23

Message par martin »

en survolant vite fait, remplace déjà

Code : Tout sélectionner

var thisspan=eval("document.all.span"+spancounter+".style") 
par

Code : Tout sélectionner

var thisspan=document.getElementById('span' + spancounter).style;
sinon, regarde les erreurs que rapporte la console javascript.
Invité

Message par Invité »

Ben ecoute un grand merci j'ai remplace les deux lignes qui contenaient ca et ca marche

tu aurais une idee pour un autre javascript qui utilkise l'agent control?

j'ai ca comme message avec firefox

Erreur : AgentControl is not defined
pour cette ligne

AgentControl.Connected = true;

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Invité

Message par Invité »

non en fait ca fonctionne pas et aucun message d'erreur pourtant dans la console, ca n'explose pas l'image en changeant lezs deux lignes par ce que tu me donnes
merci qd meme
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Invité

Message par Invité »

Bonjour a tous je reviens avec un autre script problematique avec fire fox
pour le precedent je n'ai pas reussis


<body>

<p>&nbsp;</p>
<p>&nbsp;</p>
<table align="center" width="800" border="0">
<tr>
<td width="300" height="442">
<p align="center"><a href="page1.htm"><img src="s.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page2.htm"><img src="n.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page3.htm"><img src="r.jpg" width="105" height="50"></a></p>
</td>
<td width="200">
<script>
var count=0
function dothis(){
setTimeout("document.wheel.wheel2.selectedIndex =1000",100)
setTimeout("document.wheel.wheel2.selectedIndex =count",200)
setTimeout("document.wheel.wheel2.selectedIndex =1000",300)
setTimeout("document.wheel.wheel2.selectedIndex =count",400)
setTimeout("document.wheel.wheel2.selectedIndex =1000",500)
setTimeout("document.wheel.wheel2.selectedIndex =count",600)
setTimeout("window.location = document.wheel.wheel2.options[document.wheel.wheel2.selectedIndex].value",800)
}
function animate(){
var countfinal = Math.round(Math.random()*(document.wheel.wheel2.length-1))
document.wheel.wheel2.selectedIndex =count
if (count==countfinal){
dothis()
return
}
if (count<document.wheel.wheel2.length)
count++
else
count=0
setTimeout("animate()",50)
}
</script>
<p>&nbsp;</p>
<form method="POST" name="wheel">
<p align="center">
<select name="wheel2" size="6">
<option value="page1.htm" title="page1.htm">page1
<option value="page2.htm" title="page2.htm">page2
<option value="page3.htm" title="page3.htm">page3
<option value="page4.htm" title="page4.htm">page4
<option value="page5.htm" title="page5.htm">page5
<option value="page6.htm" title="page6.htm">page6
</select>
</p>
<p align="center"><input type="button" value="Un Po&egrave;me au hasard !" name="B1" onClick="animate()"></p>
<p align="center">&nbsp;</p>
</form></td>
<td width="300">
<p align="center"><a href="page4.htm"><img src="i.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page5.htm"><img src="e.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page6.htm"><img src="p.jpg" width="105" height="50"></a></p>
</tr>
</table>

</body>


ca bloque quand ca arrive sur page6


si ca tombe surb une autre page cela fonctionne mais avec des messages d'erreurs concernant c'est lignes
setTimeout("document.wheel.wheel2.selectedIndex =1000",100)

setTimeout("document.wheel.wheel2.selectedIndex =1000",300)

setTimeout("document.wheel.wheel2.selectedIndex =1000",500)

j'ai donc vire les 1000 et les ai remplace par count, et n'ai plus de message d'erreur que qd ca tombe sur cette page6 pour cette ligne
document.wheel.wheel2.selectedIndex =count
j'ai donc rajoute sous
var selObj = document.getElementById('wheel2')

j'ai donc ceci


<body>

<p>&nbsp;</p>
<p>&nbsp;</p>
<table align="center" width="800" border="0">
<tr>
<td width="300" height="442">
<p align="center"><a href="page1.htm"><img src="s.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page2.htm"><img src="n.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page3.htm"><img src="r.jpg" width="105" height="50"></a></p>
</td>
<td width="200">
<script>
var count=0
var selObj = document.getElementById('wheel2')
function dothis(){
setTimeout("document.wheel.wheel2.selectedIndex =count",100)
setTimeout("document.wheel.wheel2.selectedIndex =count",200)
setTimeout("document.wheel.wheel2.selectedIndex =count",300)
setTimeout("document.wheel.wheel2.selectedIndex =count",400)
setTimeout("document.wheel.wheel2.selectedIndex =count",500)
setTimeout("document.wheel.wheel2.selectedIndex =count",600)
setTimeout("window.location = document.wheel.wheel2.options[document.wheel.wheel2.selectedIndex].value",800)
}
function animate(){
var countfinal = Math.round(Math.random()*(document.wheel.wheel2.length-1))
document.wheel.wheel2.selectedIndex =count
if (count==countfinal){
dothis()
return
}
if (count<document.wheel.wheel2.length)
count++
else
count=0
setTimeout("animate()",50)
}
</script>
<p>&nbsp;</p>
<form method="POST" name="wheel">
<p align="center">
<select name="wheel2" size="6">
<option value="page1.htm" title="page1.htm">page1
<option value="page2.htm" title="page2.htm">page2
<option value="page3.htm" title="page3.htm">page3
<option value="page4.htm" title="page4.htm">page4
<option value="page5.htm" title="page5.htm">page5
<option value="page6.htm" title="page6.htm">page6
</select>
</p>
<p align="center"><input type="button" value="Un Po&egrave;me au hasard !" name="B1" onClick="animate()"></p>
<p align="center">&nbsp;</p>
</form></td>
<td width="300">
<p align="center"><a href="page4.htm"><img src="i.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page5.htm"><img src="e.jpg" width="105" height="50"></a></p>
<p>&nbsp;</p>
<p align="center"><a href="page6.htm"><img src="p.jpg" width="105" height="50"></a></p>
</tr>
</table>

</body>

plus de me
et toujours impossibilite d'atrteindre la page 6 qd ca tombe dessus
acvec ce message
pour cette ligne

document.wheel.wheel2.selectedIndex =count

Erreur : uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMHTMLSelectElement.selectedIndex]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: file:///D:/Mes%20documents/Temp1/page.htm :: animate :: line 33" data: no]


je dois pas etre loin mlais n'y arrive pas si vous aviez des idees
merci


Message envoyé avec : Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727)
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 5 invités