use*_*939 3 iframe jquery fancybox angularjs angularjs-directive
我正在使用每个按钮中的iframe {{item.details}} ng-repeat的网址,这是正常的.
HTML:
<a class="various small_button shadow none" fancybox ng-href="{{item.details}}">View Details</a>
Run Code Online (Sandbox Code Playgroud)
问题是创建一个指令,用于fancybox在lightbox iframe单击按钮时创建.我试图通过查看post1和post 2以及其他一些帖子来解决这个问题,它们 很有用,但在这种情况下不是解决方案.
Fancybox指令:
app.directive('fancybox', function(){
return{
restrict: 'e',
link: function(scope, element, attrs){
element.fancybox({
type :'iframe',
scrolling : 'no',
maxWidth : 800,
maxHeight : 400,
fitToView : true,
width : '70%',
height : '70%',
autoSize : false,
closeClick : true,
openEffect : 'none',
closeEffect : 'none',
source :function(current){
return $(current.element);
}
});
}
}
});
Run Code Online (Sandbox Code Playgroud)
使用jQuery,我fancybox使用".various"和".ad"类调用.我想fancybox只使用角度调用相同的方式.
原创花式jQuery:
jQuery(document).ready(function(){
//fancybox window script
$(".various").fancybox({
type :'iframe',
scrolling : 'no',
maxWidth : 800,
maxHeight : 400,
fitToView : true,
width : '70%',
height : '70%',
autoSize : false,
closeClick : true,
openEffect : 'none',
closeEffect : 'none',
});
$(".ad").fancybox({
maxWidth : 210,
maxHeight : 140,
fitToView : true,
width : '100%',
height : '100%',
autoSize : false,
closeClick : true,
openEffect : 'none',
closeEffect : 'none'
});
});//set up close
Run Code Online (Sandbox Code Playgroud)
您可以使用:
app.directive('fancybox', function(){
return {
restrict: 'A',
link: function(scope, element, attrs){
$(element).fancybox({
type :'iframe',
scrolling : 'no',
maxWidth : 800,
maxHeight : 400,
fitToView : true,
width : '70%',
height : '70%',
autoSize : false,
closeClick : true,
openEffect : 'none',
closeEffect : 'none'
});
}
}
});
Run Code Online (Sandbox Code Playgroud)
该属性restrict必须为A(大写),因为在您的示例中,该指令是一个属性.E(大写)是指令是一个元素.你可以使用组合:restrict: 'AE'.更多信息
你需要使用$(element).fancybox({ ... })因为fancybox是一个jquery插件.
| 归档时间: |
|
| 查看次数: |
3110 次 |
| 最近记录: |