迫使iframe中的链接在iframe中打开

时间:2013-08-15 11:09:07

标签: angularjs

大家好,我是Angularjs的新手,我一直在尝试将简单的jQuery脚本转换为角度,但似乎非常不可能。我需要你的帮助,请在下面找到我的代码

---- HTML CODE ----
<iframe name="web" width="600px" height="400px"></iframe>
<a href="http://www.lipsum.com/">Lorem Ipsum</a>

我的jQuery

---- JQUERY ----
$(document).ready(function(){
  $('a').attr('target', 'web');
});

提前致谢。

3 个答案:

答案 0 :(得分:4)

只需声明已设置target属性的锚点:

<a href="http://www.lipsum.com/" target="web">Lorem Ipsum</a>

如果您在事后添加了此属性(可能是因为您想要绕过抱怨target的任何验证噪音),那么您可能会使用指令这样做:

<强>标记

<a href="http://www.lipsum.com/" my-target="web">Lorem Ipsum</a>

<强>指令

angular.module('whatever', []).directive('myTarget', function() {
    return {
        link: function( scope, el, attrs ) {
            el.attr('target', attrs.myTarget);
        }
    };
});

DEMO

答案 1 :(得分:2)

---- HTML ----
<div ng-controller="MainCtrl">
   <a href="http://www.lipsum.com/" target="web">Lorem Ipsum</a>
</div>

答案 2 :(得分:2)

我不知道angularjs处理目标的方式是什么,但是一种简单的JavaScript方式来设置它是

 var i,a=document.getElementsByTagName('a'),n=a.length;
 for (i=0;i<n;i++) a[i].setAttribute('target','web')

(当然,一旦DOM被轻易加载,这需要在一个被触发的部分完成。)