Javascript ng使用jQuery函数调用重复冲突

Javascript ng使用jQuery函数调用重复冲突,javascript,jquery,angularjs,material-design,Javascript,Jquery,Angularjs,Material Design,我结合了AngularJS和ng repeat来渲染图像。Materialiecss包括基于jQuery的materialbox函数,用于执行动画以使用materialbox类为每个元素打开一个窗口 无法通过单击打开模式。如果我只显示一个图像而不重复ng,则效果很好 这是我的密码: HTML: <div class="container" ng-controller="MainCtrl"> <span class="col m6 l4"> <

我结合了AngularJS和ng repeat来渲染图像。Materialiecss包括基于jQuery的
materialbox
函数,用于执行动画以使用
materialbox
类为每个元素打开一个窗口

无法通过单击打开模式。如果我只显示一个图像而不重复ng,则效果很好

这是我的密码:

HTML:

<div class="container" ng-controller="MainCtrl">
    <span class="col m6 l4">
        <li ng-repeat="url in imageUrls">
            <img class="materialboxed" ng-src="{{ url }}">
        </li>
    </span>
</div>
var app = angular.module("app", []);

app.controller("MainCtrl", function($scope) {
    $scope.imageUrls = ["https://d13yacurqjgara.cloudfront.net/users/179234/screenshots/1958409/screen_shot_2015-03-04_at_14.58.59.png", "https://d13yacurqjgara.cloudfront.net/users/5276/screenshots/1958408/booze_cruise_icon_kendrickkidd.jpg"];
});


// Code from MaterializeCSS
$(document).ready(function(){
    $('.materialboxed').materialbox();
});

嗨,我也遇到了同样的问题,解决方案是将jquery代码放入angularjs指令中,比如:

Javascript

yourApp.directive('theNameOfYourDirective', function() {
return {
    // Restrict it to be an attribute in this case
    restrict: 'A',
    // responsible for registering DOM listeners as well as updating the DOM
    link: function() {
        $('.materialboxed').materialbox();
    }
   };
 });
对于html代码,将指令的名称作为标记的attr:

HTML


  • 这对我有用,你好
    参考:

    嗨,我也遇到了同样的问题,解决方案是将jquery代码放入angularjs指令中,类似于:

    Javascript

    yourApp.directive('theNameOfYourDirective', function() {
    return {
        // Restrict it to be an attribute in this case
        restrict: 'A',
        // responsible for registering DOM listeners as well as updating the DOM
        link: function() {
            $('.materialboxed').materialbox();
        }
       };
     });
    
    对于html代码,将指令的名称作为标记的attr:

    HTML

    
    
  • 这对我有用,你好
    参考:

    嗨,我也遇到了同样的问题,解决方案是将jquery代码放入angularjs指令中,类似于:

    Javascript

    yourApp.directive('theNameOfYourDirective', function() {
    return {
        // Restrict it to be an attribute in this case
        restrict: 'A',
        // responsible for registering DOM listeners as well as updating the DOM
        link: function() {
            $('.materialboxed').materialbox();
        }
       };
     });
    
    对于html代码,将指令的名称作为标记的attr:

    HTML

    
    
  • 这对我有用,你好
    参考:

    嗨,我也遇到了同样的问题,解决方案是将jquery代码放入angularjs指令中,类似于:

    Javascript

    yourApp.directive('theNameOfYourDirective', function() {
    return {
        // Restrict it to be an attribute in this case
        restrict: 'A',
        // responsible for registering DOM listeners as well as updating the DOM
        link: function() {
            $('.materialboxed').materialbox();
        }
       };
     });
    
    对于html代码,将指令的名称作为标记的attr:

    HTML

    
    
  • 这对我有用,你好

    参考资料:

    没有人会去看你的演示代码,特别是如果它不是链接的话。在这里发布相关代码。我添加了关于HTML和JS的代码摘录。您是否在动态添加图像时添加了文档页面上列出的初始化代码?在AngularJS或Materialiecss(用于jQuery)的文档上?链接页面上的初始化代码没有人会去查看您的演示代码,特别是如果它不是一个链接。在这里发布相关代码。我添加了关于HTML和JS的代码摘录。您是否在动态添加图像时添加了文档页面上列出的初始化代码?在AngularJS或Materialiecss(用于jQuery)的文档上?链接页面上的初始化代码没有人会去查看您的演示代码,特别是如果它不是一个链接。在这里发布相关代码。我添加了关于HTML和JS的代码摘录。您是否在动态添加图像时添加了文档页面上列出的初始化代码?在AngularJS或Materialiecss(用于jQuery)的文档上?链接页面上的初始化代码没有人会去查看您的演示代码,特别是如果它不是一个链接。在这里发布相关代码。我添加了关于HTML和JS的代码摘录。在动态添加图像时,是否添加了文档页面上列出的初始化代码?在AngularJS或Materialiecss(用于jQuery)的文档上?链接页面上的初始化代码