Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在保持格式的同时解读jQuery中的效果_Javascript_Jquery_Animation_Jquery Plugins_Text - Fatal编程技术网

Javascript 在保持格式的同时解读jQuery中的效果

Javascript 在保持格式的同时解读jQuery中的效果,javascript,jquery,animation,jquery-plugins,text,Javascript,Jquery,Animation,Jquery Plugins,Text,我正在使用的解读插件 但它似乎只适用于没有格式的文本。我希望文本格式保持不变 例如: 解读插件: $.fn.unscramble = function() { this.each(function() { var $ele = $(this), str = $ele.text(), replace = /[^\s]/, state = [], choose = [], reveal = 25, random = ra

我正在使用的解读插件

但它似乎只适用于没有格式的文本。我希望文本格式保持不变

例如:

解读插件:

    $.fn.unscramble = function() {
        this.each(function() {
            var $ele = $(this), str = $ele.text(), replace = /[^\s]/,
                state = [], choose = [], reveal = 25, random = randomAlphaNum;

            for (var i = 0; i < str.length; i++) {
                if (str[i].match(replace)) {
                    state.push(random());
                    choose.push(i);
                } else {
                    state.push(str[i]);
                }
            }

            shuffle(choose);
            $ele.text(state.join(''));

            var timer = setInterval(function() {
                var i, r = reveal;
                while (r-- && choose.length) {
                    i = choose.pop();
                    state[i] = str[i];
                }
                for (i = 0; i < choose.length; i++) state[choose[i]] = random();
                $ele.text(state.join(''));
                if (choose.length == 0) clearInterval(timer);
            }, 100);
        });
        return this;
    };
$.fn.unclomble=function(){
这个。每个(函数(){
var$ele=$(this),str=$ele.text(),replace=/[^\s]/,,
state=[]、choose=[]、reveal=25、random=randomAlphaNum;
对于(变量i=0;i
如您所见,当按下“解读我”时,文本格式和标记将被删除

由于我缺乏制作jQuery插件的技能,我不知道问题出在哪里。我认为替换/[^\s]/时出错,但我不确定

有人有答案吗


提前感谢。

文档中说它只适用于未格式化的文本。这里什么也没坏。你想要的是一个全新的插件。重写插件以使用纯文本以外的元素。