繁体   English   中英

带jquery插件的ribs.js视图

[英]backbone.js view with jquery plugin

我发现了几个类似的问题,但没有一个对我有用。我已将jQuery插件加载了require.js(在查看脚本后加载),并且我需要在输入更改时访问其方法,但我确实尝试了改写但是是一样的 到目前为止,这就是我所拥有的。

events: {
    "change #signageUploadInput": "loadingImage"
},

loadingImage: function(event) {
    $('body').loadImage(
        event.target.files[0],
        function (img) {
            document.body.appendChild(img);
        },
        {maxWidth: 600}
    );
}

对象[object Object]没有方法'loadImage'

可以从骨干视图访问脚本IS。 问题是插件尝试访问窗口对象的方式。 我使用了不同的脚本,效果很好。 那就是我用的:

uploader.js

function my_uploader(evt) {
    var files = evt.target.files; // FileList object

    // Loop through the FileList and render image files as thumbnails.
    for (var i = 0, f; f = files[i]; i++) {

        // Only process image files.
        if (!f.type.match('image.*')) {
            continue;
        }

        var reader = new FileReader();

        // Closure to capture the file information.
        reader.onload = (function(theFile) {
            return function(e) {
                // Render thumbnail.
                var span = document.createElement('span');
                span.innerHTML = ['<img class="thumb" src="', e.target.result,
                                  '" title="', escape(theFile.name), '"/>'].join('');
                document.getElementById('list').insertBefore(span, null);
            };
        })(f);

        // Read in the image file as a data URL.
        reader.readAsDataURL(f);
    }
}

骨干视图脚本

events: {
    "change #signageUploadInput": "loadImage",
},
loadImage: function(evt) {
    my_uploader(evt);   //script is inside fileuploader.js
}

何时加载页面或在Backbone事件触发时何时出现此错误? 因为如果是在页面加载时,Backbone可能会尝试在require.js加载插件文件之前浏览并编译所有事件和函数。 需要更多信息来解决这个问题,您能否使用require.js将要加载的部分发布到JavaScript文件中?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM