2016-06-07 7 views
0

Ich benutze dieses kleine Skript zum Scrollen von Text, es speichert die Folien in einem Array, aber ich kann nicht HTML-Tags innerhalb des Arrays verwenden, gibt es einen Weg um dies?Javascript Slider nicht akzeptiert HTML

//SLOGAN CHANGE 
var cnt=0, texts=[]; 

// save the texts in an array for re-use 
$(".slogan-content").each(function() { 
    texts[cnt++]=$(this).text(); 
}); 
function slide() { 
    if (cnt>=texts.length) cnt=0; 
    $('.slogan').html(texts[cnt++]); 
    $('.slogan') 
    .fadeIn('slow').animate({opacity: 1.0}, 2900).fadeOut('slow', 
    function() { 
     return slide() 
    } 
);  
}  
slide() 
+0

Versuchen Sie, '.text();' in '.html();' zu ändern – xAqweRx

Antwort

1

Versuchen Sie, .text(), um .html() wie folgt:

$(".slogan-content").each(function() { 
    texts[cnt++]=$(this).html(); 
}); 
0

Es sieht aus wie das, was Sie brauchen, ist die HTML zu entkommen Sie in dem Array zu speichern versuchen. Versuche dies.

function escapeHtml(str) { 
    return str 
     .replace(/&/g, "&") 
     .replace(/"/g, """) 
     .replace(/</g, "&lt;") 
     .replace(/>/g, "&gt;") 
     .replace(/'/g, "&#039;"); 
} 

und im $ .each(), dies tun.

$(".slogan-content").each(function() { 
    texts[cnt++]=escapeHtml($(this).html()); 
});