2010-08-09 3 views
0

J'ai le code HTML suivantPrototype Supprimer le HTML?

<div id="top-right"> 
<span id="top-right-name">sometexthere</span> | <a href="#">link</a> 
</div> 

Et le prototype suivant JS

Event.observe(window, 'load', function() { 
try { 
if ($$('#top-right')!=null) { 

var topmenu = document.getElementById('top-right'); 
var value = topmenu.innerHTML; 
// define an array of replacements 
var replacements = [ 
    { from: '|', to: ' ' }, 
    { from: '|', to: ' ' }, 
    { from: '|', to: ' ' }, 
    { from: '|', to: ' ' } 
]; 
for (var i = 0, replacement; i < replacements.length, replacement = replacements[i]; i++) { 
    // replace 
    value = value.replace(replacement.from, replacement.to); 
} 
// replace the old text with the new 
topmenu.innerHTML = value; 

} 
} 
catch(ex) { 
} 
}); 

Je suis en train de supprimer le "|" après la </span > automatiquement onload de ce JS - mais je juste ne peux pas sembler le faire.

Quelqu'un peut-il vous aider?

Merci

Répondre

0

Il semble être une erreur de syntaxe quelque part, peut-être dans votre chargement de prototype. L'extrait ci-dessous a bien fonctionné pour moi :)

<script type="text/javascript" 
    src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.2/prototype.js"></script> 

<div id="top-right"> 
<span id="top-right-name">sometexthere</span> | <a href="#">link</a> 
</div> 

<script type="text/javascript"> 
Event.observe(window, 'load', function() { 
try { 
if ($$('#top-right')!=null) { 

var topmenu = document.getElementById('top-right'); 
var value = topmenu.innerHTML; 
// define an array of replacements 
var replacements = [ 
    { from: '|', to: ' ' } 
]; 
for (var i = 0, replacement; i < replacements.length, replacement = replacements[i]; i++) { 
    // replace 
    value = value.replace(replacement.from, replacement.to); 
} 
// replace the old text with the new 
topmenu.innerHTML = value; 

} 
} 
catch(ex) { 
} 
}); 
</script> 

Modifié pour refléter problème

+0

salut kenny - merci pour l'aide mais j'utiliser la bibliothèque Prototype - pas jQuery - d'où la syntaxe $$: – Tom

+0

Oh merde. Désolé, je n'ai pas remarqué ça! est l'Event.observe (window, 'load', function() {}) au moins étant appelé? A part ça, votre syntaxe me semble bien! :) –

+0

acclamations thx - était le problème de charge :) – Tom

Questions connexes