bonjour j'ai fait un pop up avec des smileys donc dans fire fox ça fonctionne trés bien mais sur ie 7 ça coince
dés qu'on clique sur un smileys ca vas et si on met un texte et ensuite on insérre un nouveau un smiley qui se trouve bien sur dans le pop up
là il met en double il fait que ça sur ie 7 et pas sur fix fox
voilà la page :
http://le.coffre.free.fr/forum/poster.php?action=nouveautopic&f=6
donc voilà les codes :
<a href="autres_smileys.php" onclick="window.open(this.href,'popup','height=550 , width=90');window.id_textarea = 'texte'; return false; return false;">Autres smileys</a>
et ma page ou il y as les smileys qui est dans le pop up
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<script type="text/javascript" src="includes/tous_smilies.js"></script>
<style type="text/css">
img
{
cursor:pointer;
}
</style>
<title>Smilies</title>
</head>
<body>
<div class="smilies_zform">
<a href="javascript: self.close()">fermer la fentre</a>
<br />
<img src="images/smileys/ange.png" onclick="javascript:insere(' :ange: ')" alt="ange" title="ange" />
<br />
<img src="images/smileys/angry.gif" onclick="javascript:insere(' :angry: ')" alt="angry" title="angry" />
<br />
<img src="images/smileys/diable.png" onclick="javascript:insere(' :diable: ')" alt="diable" title="diable" />
<br />
<img src="images/smileys/magicien.png" onclick="javascript:insere(' :magicien: ')" alt="magicien" title="magicien" />
<br />
<img src="images/smileys/ninja.png" onclick="javascript:insere(' :ninja: ')" alt="ninja" title="ninja" />
<br />
<img src="images/smileys/pinch.png" onclick="javascript:insere(' :pinch: ')" alt="pinch" title="pinch" />
<br />
<img src="images/smileys/pirate.png" onclick="javascript:insere(' :pirate: ')" alt="pirate" title="pirate" />
<br />
<img src="images/smileys/pleure.png" onclick="javascript:insere('  ')" alt="pleure" title="pleure" />
<br />
<img src="images/smileys/rouge.png" onclick="javascript:insere(' :rouge: ')" alt="rouge" title="rouge" />
<br />
<img src="images/smileys/soleil.png" onclick="javascript:insere(' :soleil: ')" alt="soleil" title="soleil" />
<br />
<img src="images/smileys/waw.png" onclick="javascript:insere(' :waw: ')" alt="waw" title="waw" />
<br />
<img src="images/smileys/zorro.png" onclick="javascript:insere(' :zorro: ')" alt="zorro" title="zorro" />
<br />
<br />
<a href="javascript: self.close()">fermer la fentre</a>
</div>
</body>
</html>
et ensuite le javascriipt
// JavaScript Document
var textarea = document.getElementById('textarea');
// les arrays des smileys
var smilies = new Array(':ange:',':angry:',':diable:',':magicien:',':ninja:',':pinch:',':pirate:',':pleure:',':rouge:', ':soleil:', ':waw:', ':zorro:');
var smilies_url = new Array('ange.png','angry.gif','diable.png','magicien.png','ninja.png','pinch.png','pirate.png','pleure.png','rouge.png','soleil.png','waw.png','zorro.png');
function insere(smiley)
{
var champ = window.opener.document.getElementById('textarea');
var scroll = champ.scrollTop;
smiley = ' ' + smiley + ' ';
if (champ.curseur)
{
champ.curseur.text = smiley;
}
else if (champ.selectionStart != 'undefined' && champ.selectionEnd != 'undefined')
{
var debut = champ.value.substring(0, champ.selectionStart);
var fin = champ.value.substring(champ.selectionEnd);
champ.value = debut + smiley + fin;
champ.focus();
champ.setSelectionRange(debut.length + smiley.length, champ.value.length - fin.length);
}
else
{
champ.value += smiley;
champ.focus();
}
champ.scrollTop = scroll;
var champ = window.opener.document.getElementById('textarea');
var div_prev = document.getElementById('prev_'+textarea);
var contenu = champ.value;
}
function remplace(data, search, replace)
{
var temp = data;
var longueur = search.length;
while (temp.indexOf(search) > -1)
{
pos= temp.indexOf(search);
temp = (temp.substring(0, pos) + replace + temp.substring((pos + longueur), temp.length));
}
return temp;
}
//zone de saisie -> un textarea
var champ = document.getElementById('textarea');
//zone de pre-visualisation -> une div
var div_prev = document.getElementById('prev_'+textarea);
merci de me trouvé pour quoi dans ie 7 ça beugues il met en double et triple etc...le smiley et le texte
|