我从网上找到的东西上写了一个小的jQuery代码插件。它完美地完成了它的工作,但是我希望它允许html标记,而且我被它困住了,因为我无法正确地编写html标记。它只是编写它们,而没有其他任何东西,因此我无法创建换行或强文本。
下面是代码:
(function($) {
$.fn.Ticker = function(cont,time) {
var conArray = cont.split(""),
current = 0,
elem = this;
setInterval(function() {
if(current < conArray.length) {
elem.html(elem.html() + conArray[current++]);
}
}, time);
};
})(jQuery);
var tickertext = $("#tickertext").html();
$(document).ready(function(){
$("#tickto").Ticker(tickertext,50);
});关于这一点:如果我http://jsfiddle.net/29axW/ console.log(conArray)是一个像<a href="kissa.php">moi</a>这样的链接,我就能得到
["<", "a", " ", "h", "r", "e", "f", "=", """, "k", "i", "s", "s", "a", ".", "p", "h", "p", """, ">", "m", "o", "i", "<", "/", "a", ">"] 但它只是简单地写成纯文本。因此,我需要它首先解析槽html标签,然后插入它们,而用户看不到它,等等.
发布于 2013-03-05 18:50:01
如果到达HTML-标记,您可以跳过间隔.看看我是如何意识到这一点的:https://github.com/yckart/jquery.typer.js/blob/master/jquery.typer.js#L34-L38
这是一个工作实例。
发布于 2013-03-05 18:45:25
这是因为浏览器一次只获取一个标签的一个字符,所以不会将其呈现为标记。您可能需要将字符串拆分为标记和文本,然后将文本拆分为单个字符。
我会设法想出一个简单的方法来做这件事。
发布于 2013-03-05 19:56:20
在将Html标记发送到浏览器之前,应该完成它。否则它就像字符串一样。
我在考虑解决方案。您应该使用html树,找到嵌套的html标记并将文本附加到其中。这是我的小提琴,它扩展了你的。对不起,这段代码应该升级,但我给出了基本的想法。
它适用于嵌套标记(如<strong><i>text</i></strong>)和不关闭的标记(如<br/> )。
如果你需要其他解释的话。
https://stackoverflow.com/questions/15231535
复制相似问题