decode未定义
来源:6-2 实现数据层与UI渲染连调

慕虎7188715
2016-05-22
我的代码总是报这种错,哪位帮忙看看?需要引入的文件也都引入了
写回答
3回答
-
<script sr c="js/jquery.base64.js"></script> 你代码这个地方 sr和c之间有个空格,这样会导致base64.js引入失败,你检查一下这里看看?
012016-05-27 -
远人
2016-05-23
能不能截图看一下这个代码具体是哪个文件 哪行报错,因为chrome里的报错可能是因为你安装了一些插件导致的 而不是你写的代码的问题
012016-05-23 -
慕虎7188715
提问者
2016-05-23
<script src="lib/zepto.min.js"></script> <script> window.jQuery = $; </script> <script sr c="js/jquery.base64.js"></script> <script src="js/jquery.jsonp.js"></script> //上面为引入 (function(){'use strict'; var Util=(function(){ var prefix='ficiton_reader_'; var StorageGetter=function(key){ return localStorage.getItem(prefix+key); } var StorageSetter=function(key,val){ return localStorage.setItem(prefix+key,val); } //解密获得的JSOP数据,base64插件需要跨域 var getJSONP=function(url,callback){ return $.jsonp({ url:url, cache:true, callback:'duokan_fiction_chapter', success:function(result){ debugger var data= $.base64.decode(result);//解码后为JSON数据 var json=decodeURIComponent(escape(data));//解码 callback(json); } }); } return { getJSONP:getJSONP, StorageGetter:StorageGetter, StorageSetter:StorageSetter } })(); var Dom={ top_nav:$('#top_nav'), bottom_nav:$('.bottom_nav'), font_container:$('.font-container'), nav_pannel_bk:$('.nav-pannel-bk'), font_button:$('#font_button'), } var Win=$(window); var Doc=$(document); var RootContainer=$('#fiction_container'); //获取本地已存储的字体大小 var inintFontSize=Util.StorageGetter('font_size'); inintFontSize=parseInt(inintFontSize); if(!inintFontSize){ inintFontSize=14; } RootContainer.css('font-size',inintFontSize); //入口 function main(){ var readerModel=ReaderModel(); var readerUI=ReaderBaseFrame(RootContainer); readerModel.init(function(data){ readerUI(data); }); EventHanlder(); }; //实现和阅读器相关的数据交互的方法 function ReaderModel(){ var Chapter_id; //初始化界面 var init=function(){ //获得章节 getFictionInfo(function(){ //获得章节下的内容 getCurChapterContent(Chapter_id,function(data){ // //UIcallback && UIcallback(data); }); }); } var getFictionInfo=function(callback){ $.get('data/chapter.json',function(data){ //获得章节信息之后的回调 Chapter_id=data.chapters[1].chapter_id; callback && callback(); },'json'); }; //获得当前章节内容 var getCurChapterContent=function(chapter_id,callback){ $.get('data/data'+chapter_id+'.json',function(data){ if(data.result==0){//result为0时请求成功,这是根据后台及公司规定的 var url=data.jsonp;//获得真实数据的地址data3.json中的jsonp Util.getJSONP(url,function(data){//获得解码后的数据 callback && callback(data); }); } },'json'); } //暴露 return{ init:init } }; //渲染基本的UI结构 function ReaderBaseFrame(container){ /*function parseChapterData(jsonData){ var jsonObj=JSON.parse(jsonData); var html='<h4>'+jsonObj.t+'</h4>'; for(var i=0;i<jsonObj.p.length;i++){ html+='<p>'+jsonObj.p[i]+'</p>'; } return html; } return function(data){ container.html(parseChapterData(data)); }*/ }; //字体变大 $('#large-font').click(function(){ if(inintFontSize>20){ return; } inintFontSize+=1; RootContainer.css('font-size',inintFontSize); //本地存储字体大小 Util.StorageSetter('font_size',inintFontSize); }); //字体变小 $('#small-font').click(function(){ if(inintFontSize<12){ return; } inintFontSize -=1; RootContainer.css('font-size',inintFontSize); Util.StorageSetter('font_size',inintFontSize); }); //背景色变化 $('.bk-container-current').click(function(){ RootContainer.css('background-color',$(this).css('background-color')); $(this).parent().css('border','1px #ff7800 solid').siblings().css('border','none'); }); //交互的事件绑定 function EventHanlder(){ /*头问,底部导航栏出现与隐藏*/ $('#action_mid').click(function(){ if(Dom.top_nav.css('display')=='none'){ Dom.bottom_nav.show(); Dom.top_nav.show(); }else{ Dom.bottom_nav.hide(); Dom.top_nav.hide(); Dom.nav_pannel_bk.hide(); $('.nav-pannel ').hide(); } }); Win.scroll(function(){ Dom.bottom_nav.hide(); Dom.top_nav.hide(); Dom.font_container.hide(); Dom.font_button.removeClass('current'); Dom.nav_pannel_bk.hide(); }); /*字体切换*/ Dom.font_button.click(function(){ if(Dom.font_container.css('display')=='none'){ Dom.font_container.show(); Dom.font_button.addClass('current'); Dom.nav_pannel_bk.show(); }else{ Dom.font_container.hide(); Dom.font_button.removeClass('current'); Dom.nav_pannel_bk.hide(); } }); /*白夜切换*/ $('#day-night').trigger(function(){ //todo }); }; main(); })();
00
相似问题