Javascript 如何使用此代码在单眼电子书阅读器中制作“下一步”和“上一步”按钮?

Javascript 如何使用此代码在单眼电子书阅读器中制作“下一步”和“上一步”按钮?,javascript,filereader,monocle,Javascript,Filereader,Monocle,我为“下一步”和“上一步”按钮创建了此功能,换句话说,在我的html页面中有2个按钮,当我单击“下一步”或“上一步”时,单片眼镜中的页面也会相应移动, 我读到我必须为此使用一个自定义页面翻转器,但他们没有提供一个如何创建页面翻转器的示例 这就是我尝试过但失败的地方: function fileSelected(event,str) { var thefile = document.getElementById('file'); var tval = thefile.value;

我为“下一步”和“上一步”按钮创建了此功能,换句话说,在我的html页面中有2个按钮,当我单击“下一步”或“上一步”时,单片眼镜中的页面也会相应移动, 我读到我必须为此使用一个自定义页面翻转器,但他们没有提供一个如何创建页面翻转器的示例

这就是我尝试过但失败的地方:

function fileSelected(event,str) {

    var thefile = document.getElementById('file');
    var tval = thefile.value;
    var ext = tval.split('.').pop();
    var files = event.target.files;
    var fname = tval.split(/(\\|\/)/g).pop();


   if (ext == "epub" || ext == "EPUB"){
        function createReader(bookData) {
            Monocle.Reader("reader", bookData);
        }
        new Epub(files[0], createReader);

   }else if(ext == "htm" || ext == "htm" || ext == "html" || ext == "HTML"){

        var bookData = {
            getComponents: function () {
                return [
                    fname
                    ];
            },
            getContents: function () {
                return [
                    {title: "test", src: fname}
                    ]
            },
            getComponent: function (componentId) {
                return {url:componentId};
            },
            getMetaData: function(key) {
                return {
                    title: "Test documents",
                    creator: "Aron Woost"
                    }[key];
            }
        }
                window.reader = Monocle.Reader('reader', bookData);

   }else{
        return false;
   }


}
function next(){    
    Monocle.Reader('reader', {}, {}, function (reader) {
      reader.moveTo({ direction: 1 });
    });
}
单击“下一步”时,将在我的控制台中出现未定义的错误

有没有关于如何实现自定义页面翻转器的想法


我在JS方面不是那么精明。抱歉:(

我认为问题出在这段变量声明中:

var thefile = document.getElementById('file');
var tval = thefile.value;
var ext = tval.split('.').pop();
var files = event.target.files;
var fname = tval.split(/(\\|\/)/g).pop();
是否有任何输入字段具有适用的“value”属性,如

您确定文件名中肯定会有一个点,即扩展名吗

而且
event.target.files
看起来可疑

如果没有问题,请告诉控制台显示错误的行。您可以双击错误以突出显示错误行