Bonjour,
j'aurais besoin de votre aide

J'ai crée une fonction permettant d'effacer des liens dans une page.

L'exemple ci-dessous va parcourir tous les liens et supprimer ceux qui contiennent "toto.fr" dans href.

Pour supprimer les éléments j'utilise gElem.parentNode.removeChild(gElem); mais le probleme c'est que cela supprime 1 élément sur 2...

Auriez-vous une idée pour résoudre ce problème ?

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
25
26
27
28
29
30
31
32
33
34
35
36
37
<a href="http://toto.fr/lqskdljhqsd">test 1</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 2</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 3</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 4</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 5</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 6</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 7</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 8</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 9</a><br />
<a href="http://toto.fr/lqskdljhqsd">test 10</a><br />
 
 
 
 
<script type="application/javascript">
		function deleteLinks(gUrl, gType, gSrc){
			if(gType == "a" && document.links) 					var _getElements = document.links;
			else if(document.getElementsByTagName(gType)) 		var _getElements = document.getElementsByTagName(gType);
			if(_getElements){
				var countScript		= _getElements.length;
				var matchScript		= new RegExp(gUrl, "gi");
				for(var i = 0; i < countScript; i++){
					if(gSrc == "href" && _getElements[i].href) 	var getSource = _getElements[i].href;
					else if(_getElements[i].src) 				var getSource = _getElements[i].src;
					if(getSource){
						if(getSource.match(matchScript)){
							var gElem = _getElements[i];
							if(gElem && gElem.parentNode)
								gElem.parentNode.removeChild(gElem);							
						}
					}
				}
			}
		}		
 
		deleteLinks("toto\\.fr", "a", "href");
</script>
Merci