此选择器具有多个元素错误

时间:2014-01-24 15:23:07

标签: javascript jquery

我一直收到错误 TurnJsError:这个选择器有多个元素我在Firebug中做了一些检查,我知道我的Jquery正在加载,因为我需要的所有库/脚本。

我的页面加载后出现错误,如果我将我的javascript的以下部分添加到控制台并在页面完全加载之前运行它然后确定但仍然返回与上面相同的错误,但是如果我让页面加载(再次从上面获取错误),然后在控制台中运行该脚本我得到另一个错误 TypeError:Node.insertBefore的参数1没有实现接口节点。

function loadApp() {

// Create the flipbook

$('.flipbook').turn({
        // Width

        width:922,

        // Height

        height:600,

        // Elevation

        elevation: 50,

        // Enable gradients

        gradients: true,

        // Auto center this flipbook

        autoCenter: true

}); 
}
// Load the HTML4 version if there's not CSS transform  
$(document).ready(function() {
yepnope({
test : Modernizr.csstransforms,
yep: ['../../lib/turn.js'],
nope: ['../../lib/turn.html4.min.js'],
both: ['css/basic.css'],
complete: loadApp
});
});

我可能会遗漏导致这些错误的原因吗?

当我添加.first()所以它就像$('。flipbook')。first()。turn({页面完全加载后我的图像略有移动,但仍然出现错误 TypeError:Node.insertBefore的参数1没有实现接口节点。当我点击我的图像时它会消失,但是下一个图像没有显示而是我得到另一个错误 TypeError:c为null

1 个答案:

答案 0 :(得分:2)

turn.js使用单个元素。使用.each函数。

$('.flipbook').each(function(){
    $(this).turn(...);
})

请注意,转可能需要容器上的唯一ID。