加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJS删除属性

发布时间:2020-12-17 07:46:24 所属栏目:安全 来源:网络整理
导读:我有一个指令,用一些常规的HTML替换我的自定义标签. 有一些我想删除的属性.例如,给出语法 ui mybutton width="30"/mybutton 我的指令将其转换成 div width="30" class="btn"bla bla /div 我想删除“width = 30”并添加style =“width:{{old width value her
我有一个指令,用一些常规的HTML替换我的自定义标签.
有一些我想删除的属性.例如,给出语法
<ui mybutton width="30"></mybutton>

我的指令将其转换成

<div width="30" class="btn">bla bla </div>

我想删除“width = 30”并添加style =“width:{{old width value here}}”

我一直在尝试编译和链接功能.我应该在编译或链接功能中这样做吗?

我以为我必须在编译函数中执行它,因为我想在模板中进行修改.

现在看到它在http://jsfiddle.net/WptGC/2/警告:您的浏览器可能会挂起!
看到它生活和安全http://jsfiddle.net/WptGC/3/代码,使一切崩溃的评论.

.directive('mybutton',function($compile) {
return {
    restrict: 'A',//transclude: true,template: '<div class="this is my subscreen div" style="width:{{width}}"></div>',replace: false,/*scope: {
        width: '@',height: '@',x: '@',y: '@'
    },*/

    compile: function($tElement,$tAttrs) {
        console.log("subscreen template attrs:");
        console.log($tAttrs);
        var el = $tElement[0];
         //el.getAttribute('width');
        var stylewidth = el.getAttribute('width'); 
        el.removeAttribute('width');

         return function(scope) {
            $compile(el)(scope);
         }
    }
}
})

我刚刚得到一个奇怪的循环(该console.log显示了几千次)

除非我缺少一些其他要求,否则您应该能够使用隔离范围和模板:

http://jsfiddle.net/WptGC/6/

app.directive('backbutton',function(){
  return {
    restrict: 'A',replace:true,scope: {
        x: '@',template:'<button style="width: {{x}}px; height: {{y}}px">A back-button template</button>',link: function (scope,element,attrs) {
      element.removeAttr('x').removeAttr('y');
    }
  }
});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读