Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.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消息转换为超链接?_Javascript_Jquery_Html - Fatal编程技术网

如何将Javascript消息转换为超链接?

如何将Javascript消息转换为超链接?,javascript,jquery,html,Javascript,Jquery,Html,下面,我正在使用此代码: Javascript: (function( $ ) { var settings; var currentCard; var prevCard = []; // Plugin definition. $.fn.decisionTree = function( options ) { var elem = $( this ); settings = $.extend( {}, $.fn.decisionTree.defaults, options );

下面,我正在使用此代码:

Javascript:

(function( $ ) {
var settings;
var currentCard;
var prevCard = [];

// Plugin definition.
$.fn.decisionTree = function( options ) {
    var elem = $( this );
    settings = $.extend( {}, $.fn.decisionTree.defaults, options );

    elem.addClass(settings.containerClass);
    renderRecursive(settings.data, elem, "dctree-first");

    $('.dctree-prev').on('click', function() {
        showCard(prevCard.pop(), true);
    });

    currentCard = $('#dctree-first');
    currentCard.show();
};


$.fn.decisionTree.defaults = {
    data: null,
    animationSpeed: "fast",
    animation: "slide-left",
    containerClass: "dc-tree",
    cardClass: "dctree-card",
    messageClass: "dctree-message"
};

function renderRecursive(data, elem, id) {
    var container = $('<div></div>')
        .addClass(settings.cardClass)
        .addClass('col-xs-12');
    var message = $('<div></div>').addClass(settings.messageClass).append(data.message);
    container.append(message);

    if (id != null) {
        container.attr('id', id)
    }

    if (typeof data.decisions != "undefined") {
        var decisions = $('<div></div>').addClass('dctree-decisions');
        for(var i=0; data.decisions.length > i; i++) {
            var decision = data.decisions[i];
            var genId = guid();
            var grid = $('<div></div>').addClass('col-md-6');
            var answer = $('<div></div>')
                .addClass("dctree-answer-" + i)
                .append(decision.answer)
                .on('click', function() {
                    getNextCard(this);
                })
                .attr('data-dctree-targetid', genId);
            if (typeof decision.class != "undefined") {
                answer.addClass(decision.class);
            }
            grid.append(answer);
            decisions.append(grid);
            renderRecursive(decision, elem, genId);
        }
        container.append(decisions);
    }


    if (id != 'dctree-first') {
        var controls = $('<div></div>').addClass('dctree-controls col-md-12');
        controls.append($('<a href="javascript:;" class="dctree-prev">< Back</a>'));
        container.append(controls);
    }

    elem.append(container);
}

function getNextCard(elem)
{
    var e = $(elem);
    currentCard = e.parents('.' + settings.cardClass)[0];
    prevCard.push(currentCard.id);
    var nextCard = e.attr('data-dctree-targetid');    
    showCard(nextCard);
}

function showCard(id, backward)
{
    var nextCard = $("#" + id);

    if (settings.animation == 'slide') {
        $(currentCard).slideUp(settings.animationSpeed, function(){
            nextCard.slideDown(settings.animationSpeed);
        });
    } else if (settings.animation == 'fade') {
        $(currentCard).fadeOut(settings.animationSpeed, function(){
            nextCard.fadeIn(settings.animationSpeed);
        });
    } else if (settings.animation == 'slide-left') {
        var left = {left: "-100%"};
        var card = $(currentCard);

        if (backward) {
            left = {left: "100%"};
        }
        card.animate(left, settings.animationSpeed, function(){
            card.hide();
        });

        if (nextCard.css('left') == "-100%" || nextCard.css('left') == "100%") {
            left.left = 0;
            nextCard.show().animate(left, settings.animationSpeed);
        } else {
            nextCard.fadeIn(settings.animationSpeed);
        }
    }

    currentCard = nextCard;
}

function guid() {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
        return v.toString(16);
    });
}

// End of closure.

})( jQuery );
(函数($){
var设置;
无功电流卡;
var prevCard=[];
//插件定义。
$.fn.decisionTree=函数(选项){
var elem=$(本);
设置=$.extend({},$.fn.decisionTree.defaults,options);
元素addClass(设置容器类);
renderCursive(settings.data,elem,“dctree-first”);
$('.dctree prev')。在('click',function()上{
showCard(prevCard.pop(),true);
});
currentCard=$(“#dctree first”);
currentCard.show();
};
$.fn.decisionTree.defaults={
数据:空,
动画速度:“快”,
动画:“向左滑动”,
容器类:“dc树”,
cardClass:“dctree卡”,
messageClass:“dctree消息”
};
函数renderCursive(数据、元素、id){
变量容器=$(“”)
.addClass(设置.cardClass)
.addClass('col-xs-12');
var message=$('').addClass(settings.messageClass).append(data.message);
container.append(消息);
如果(id!=null){
container.attr('id',id)
}
if(type of data.decisions!=“未定义”){
var决策=$('').addClass('dctree-decisions');
对于(var i=0;data.decisions.length>i;i++){
var决策=数据。决策[i];
var genId=guid();
变量网格=$('').addClass('col-md-6');
变量回答=$('')
.addClass(“dctree答案-”+i)
.append(decision.answer)
.on('单击',函数()){
getNextCard(本);
})
.attr('data-dctree-targetid',genId);
if(typeof decision.class!=“未定义”){
答案.addClass(decision.class);
}
追加(应答);
追加决策(网格);
renderCursive(decision、elem、genId);
}
容器。附加(决定);
}
如果(id!=“dctree first”){
var controls=$('').addClass('dctree-controls col-md-12');
追加($(“
这是我的索引页:

<html>

  <head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link href="../css/styles.css" type="text/css" rel="stylesheet">
<script src="http://code.jquery.com/jquery-3.1.1.js"></script>
<script src="../js/tree.js"></script>
<link href="http://www.jqueryscript.net/css/jquerysctipttop.css" rel="stylesheet" type="text/css">
<title>Test Tree</title>

<style>
  body {
    font: 'Gotham Book', Gotham-Book, Arial, sans-serif;
    background-color: #f2f2f2;
  }

  h1 {
    margin: 150px auto 50px auto;
    text-align: center;
  }

</style>

测试树
身体{
字体:“Gotham Book”,Gotham Book,Arial,无衬线;
背景色:#F2F2;
}
h1{
保证金:150px自动50px自动;
文本对齐:居中;
}


测试树
风险值数据={
信息:“我们正在为客户做什么?
",
决定:[{
回答:“开一个新的支票账户。”,
班级:“绿色”,
信息:“要收费吗?”,
决定:[{
回答:“是的”,
班级:“绿色”,
信息:“表格1”
},
{
回答:“没有”,
职业:“暗蓝色”,
信息:“表格2”
},
{
答:“特殊情况”,
职业:“软黑”,
信息:“表格3”
},              
]
},         
]
};
$(文档).ready(函数(){
$('.main').decisionTree({
数据:数据
});
});
var _gaq=_gaq | |[];
_gaq.push([''设置帐户','UA-36251023-1']);
_gaq.push([''u setDomainName','jqueryscript.net']);
_gaq.push([''u trackPageview']);
(功能(){
var ga=document.createElement('script');
ga.type='text/javascript';
ga.async=true;
ga.src=('https:'==document.location.protocol?'https://ssl' : 'http://www“)+”.google analytics.com/ga.js';
var s=document.getElementsByTagName('script')[0];
s、 parentNode.insertBefore(ga,s);
})();

我的问题是:在浏览决策树时,如何才能将“消息”变成链接?在上面的示例中,“消息”是:表1、表2和表3。我希望这些链接到单独的网页,最好在新窗口中打开。

用于将文本包装在
标签中

.wrapInner()函数可以接受任何可能的字符串或对象 传递给$()工厂函数以指定DOM结构。这 结构可以嵌套几层,但只应包含 最里面的一个元素。结构将围绕内容展开 匹配元素集中每个元素的

就在
container.append(消息)之前添加:

message.wrapInner('<a href="#"></a>');

测试树
我想你有两个选择。
message.wrapInner('<a href="#"></a>');