bxslider指令抛出错误`Uncaught TypeError:无法读取属性' indexOf'未定义的

时间:2016-08-12 06:57:47

标签: jquery html angularjs bxslider

我在我的应用程序中使用angularjs,我已经为bxslider创建了一个指令。以下是指令代码:

angular.module('sbAdminApp')
.directive('bxSlider', function(){
    return{
        restrict: "A",
        require: "ngModel",
        link: function(scope, element, attrs, ctrl){
            element.ready(function(){
                $($(element[0])).bxSlider({
                    maxSlides:1,
                    auto:true,
                    controls:false,
                    pager:true
                });
            })
        }
    }
})

上面我在准备好功能之后使用这个$($(element[0])).bxSlider({因为我搜索bxslider应该与ng-repeat 一起使用的问题并且找到了这个解决方案,之后bxslider正在工作但有时候会出现问题没有加载,我总能看到这个错误。

  

未捕获的TypeError:无法读取属性' indexOf'未定义的

1 个答案:

答案 0 :(得分:19)

最后,经过这么多搜索,我得到了答案

这不是angularjs错误,这是与bxslider兼容的jquery版本。

问题是由jQuery .load()函数引起的。

在bxslider.js文件中找到.load()函数的代码行。它在bxslider.js中只使用过一次。

$(this).load();

$(this).trigger('load');

感谢kkakkurt提供了这个出色的解决方案https://stackoverflow.com/a/38562965/4119808