2017-06-08 66 views
0

我使用visjs,我想隱藏第一個div的第一個圖像,我可以做到這一點,我用ng-show但它不工作?使用angularjs隱藏一個元素

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; 
     }; 

回答

0

你可能不應該這樣構建你的HTML。

您應該正確使用AngularJS來將您的HTML綁定到您的控制器。

有關隱藏:<div ng-hide="myValue"></div>

結帳更多:https://docs.angularjs.org/api/ng/directive/ngHide

+0

yess..you are right.how我可以建立html –

+0

例如,你可以有一個圖像列表,你可以在你的HTML中使用angular forEach來構建每個這些divs – ricardofagodoy

+0

請看上面的 –

0

你的問題是,你是注入HTML。 In angular; HTML不應包括在JavaScript中,而應包含在模板中。

但是;如果你希望你生成的HTML被解釋爲一個Angular代碼(並添加ng-hide);你要「編譯」這是(不適用於初學者)

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

舉一個例子一個複雜的過程;請看看該帖子:https://stackoverflow.com/a/11780658/3687474

+0

你能給一個例子請 –

+0

鏈接到一個例子的帖子 – aorfevre

+0

看看上面..post編輯 –