使用angularjs隐藏元素

时间:2017-06-08 15:06:10

标签: javascript jquery angularjs

我使用visjs,我想要隐藏第一个div的第一个图像,我怎么能这样做,我使用ng-show但它不起作用?

storyboard.drawTimeLine = function (start, end, color, marg,km) {
        var elm = angular.element(document.querySelector('#vv'));
            elm.html("");
            item = {};
            item.id = start + '@' + end;
            item.start = start;
            item.end = end;
            item.title = elm.append($compile(
                '<div style="padding-left:0px;padding-bottom: 9px "><img src="../../../../assets/img/fuel.png"> -</div>'+
                '<div style="padding-left:0px;padding-bottom: 9px "><img src="../../../../assets/img/oil.png">  -</div>')($scope)).html();
                ;
            item.style ="top:"+ marg +"px;height:14px;background-color:" + color + ";border-color:" + color;
        };

2 个答案:

答案 0 :(得分:0)

您可能不应该像这样构建HTML。

您应该正确使用AngularJS将HTML绑定到控制器。

关于隐藏:<div ng-hide="myValue"></div>

结帐更多:https://docs.angularjs.org/api/ng/directive/ngHide

答案 1 :(得分:0)

您的问题是您正在注入HTML。 有棱角的; HTML不应包含在Javascripts中,而应包含在模板中。

然而;如果您希望将生成的HTML解释为Angular代码(并添加ng-hide);你应该&#34;编译&#34;这是一个复杂的过程(不适合初学者)

https://docs.angularjs.org/guide/compiler

举个例子;请查看该帖子:https://stackoverflow.com/a/11780658/3687474