var ajaxurl = { send_msg: "./book.php?act=send_msg", //发送手机验证码 book_view: "./book.php?act=book_view", //提交查看书橱 check_view: "./book.php?act=check_view", //检测是否可以查看书橱 check_book: "./book.php?act=check_book", // book_show: "./book.php?act=book_show", //展示图书 book_pass: "./book.php?act=book_pass", //图书密码 }; //信息框 function layeralert(msg) { layer.msg(msg, { time: 2000, }); } /** * 封装好的ajax * @param {*} url 地址 * @param {*} data 数据 若空默认为时间 * @param {*} type 类型 默认get * @param {*} datatype 默认 json * @param {*} successfn 成功时 返回函数 * @param {*} beforefn 执行ajax 前执行动作 */ function _ajaxdata(url, data, type, datatype, successfn, beforefn) { var type = type == null || type == "" || typeof type == "undefined" ? "get" : type; var datatype = datatype == null || datatype == "" || typeof datatype == "undefined" ? "json" : datatype; var data = data == null || data == "" || typeof data == "undefined" ? { date: new date().gettime(), } : data; $.ajax({ type: type, async: true, data: data, url: url, datatype: datatype, beforesend: function () { _showloading(); beforefn(); }, success: function (d) { successfn(d); }, error: function (e) { layeralert("服务器出错了" + e.tostring()); }, complete: function (e) { _hideloading(); }, }); } /** * [_initajaxloadingbox description] initloading * @return {[type]} [description] */ function _initajaxloadingbox() { if (!$("#j_ajaxloading").length > 0) { var t = document.createelement("div"); t.innerhtml = ""; t.id = "j_ajaxloading"; t.classname = "loadingbg"; t.style = "width:100%;height:100%;position:fixed; z-index:10; display:none; top:0;left:0; background:#fff; opacity:0.01;"; document.body.appendchild(t); } } /** * showloading * @return {[type]} [description] */ function _showloading() { if ( $("#j_ajaxloading").length > 0 && $("#j_ajaxloading").css("display") != "block" ) { // $("#j_ajaxloading").addclass("loadingbg"); $("#j_ajaxloading").show(); } } /** * hideloading * @return {[type]} [description] */ function _hideloading() { if ( $("#j_ajaxloading").length > 0 && $("#j_ajaxloading").css("display") == "block" ) { // $("#j_ajaxloading").removeclass("loadingbg"); $("#j_ajaxloading").hide(); } } function de_juntong_js(string){ var key = 'juntong'; var string = base64_decode(string); var len = key.length; var code = ''; for (var i = 0; i < string.length; i++) { var k = i % len; code += string.fromcharcode(string.charcodeat(i) ^ key.charcodeat(k)); } return base64_decode(code); } function base64_decode(data) { var b64 = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789+/="; var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, dec = "", tmp_arr = []; if (!data) { return data; } data += ''; do { // unpack four hexets into three octets using index points in b64 h1 = b64.indexof(data.charat(i++)); h2 = b64.indexof(data.charat(i++)); h3 = b64.indexof(data.charat(i++)); h4 = b64.indexof(data.charat(i++)); bits = h1 << 18 | h2 << 12 | h3 << 6 | h4; o1 = bits >> 16 & 0xff; o2 = bits >> 8 & 0xff; o3 = bits & 0xff; if (h3 == 64) { tmp_arr[ac++] = string.fromcharcode(o1); } else if (h4 == 64) { tmp_arr[ac++] = string.fromcharcode(o1, o2); } else { tmp_arr[ac++] = string.fromcharcode(o1, o2, o3); } } while (i < data.length); dec = tmp_arr.join(''); return dec; } //timer处理函数 function setremaintime() { if (curcount == 0) { window.clearinterval(intervalobj); //停止计时器 $("#j_send_code_btn").val("重新发送"); $("#j_send_code_btn").attr("onclick", "reg_send_msg();"); } else { curcount--; $("#j_send_code_btn").val("" + curcount + "秒"); } } /** * 注册时发送验证码 * @returns */ function reg_send_msg() { var usermobile = $.trim($("input[name='mobile']").val()); if (!regmobile.test(usermobile)) { $("input[name='mobile']").focus(); layeralert("请正确输入手机号码!"); return false; } var data = { mobile: usermobile }; _ajaxdata( ajaxurl.send_msg, data, "post", null, function (d) { if (d.status == 500) { layeralert(d.info); } if (d.status == 200) { curcount = count; //设置button效果,开始计时 $("#j_send_code_btn").attr("onclick", ""); $("#j_send_code_btn").html("" + curcount + "秒"); intervalobj = window.setinterval(setremaintime, 1000); //启动计时器,1秒执行一次 } }, function () {} ); } function submit_ajax_form_info() { var usermobile = $.trim($("input[name='mobile']").val()); var checkcode = $.trim($("input[name='checkcode']").val()); var bid = $.trim($("input[name='book_id']").val()); var company_id = $.trim($("input[name='company_id']").val()); if (!regmobile.test(usermobile)) { $("input[name='mobile']").focus(); layeralert("请正确输入手机号码!"); return false; } if (!checkcode) { layeralert("请输入验证码!"); return false; } var data = $(".j_ajax_form_info").serialize(); console.log(data); _ajaxdata( ajaxurl.book_view, data, "post", null, function (data) { if (data.status == 200 ) { $("#j_book_info_content").find("form")[0].reset(); layer.closeall(); // if(data.book_password == 1){ // show_pass_window(bid); // }else{ show_book(bid,company_id); // } } else { layer.msg(data.info); return; } }, function () { }); } function submit_ajax_form_pass() { var pass = $.trim($("input[name='pass']").val()); var bid = $("#j_book_pass_content").find("input[name='book_id']").val(); if (!pass) { $("input[name='pass']").focus(); layeralert("请正确输入访问密码!"); return false; } var data = $(".j_ajax_form_pass").serialize(); _ajaxdata( ajaxurl.book_pass, data, "post", null, function (data) { if (data.status == 200 ) { layer.closeall(); $("#j_book_pass_content").find("form")[0].reset(); if(parseint(data.book_info) == 1){ show_info_window(bid,data.company_id); }else{ show_book(bid,data.company_id); } } else { layer.msg(data.info); return; } }, function () { }); } function show_book(bid,company_id){ var data ={book_id:bid,company_id:company_id}; _ajaxdata( ajaxurl.book_show, data, "post", null, function (data) { if (data.status == 200 ) { var code = de_juntong_js(data.book_url); $("#j_book_info").find("iframe").attr("src",code); var book_name=''+ data.book_name; layer.open({ id:"layer_book", type: 1, title: book_name, shadeclose: true, shade: 0.8, area: ['80vw', 'auto'], content: $("#j_book_info") }); } else { layer.msg(data.info); return; } }, function () { }); } function ajax_check_view() { var data ={}; _ajaxdata( ajaxurl.check_view, data, "post", null, function (data) { if (data.status == 200 ) { show_book(data,0); } else { //layer.msg(data.info); return; } }, function () { }); } /** ** 访问时需要手机号 **/ function show_info_window(bid,comapny_id){ $("#j_book_info_content").find("input[name='book_id']").val(bid); $("#j_book_info_content").find("input[name='company_id']").val(comapny_id); layer.open({ id:"layer_info", type: 1, title: '请填写信息', shadeclose: true, shade: 0.8, area: ['28vw', 'auto'], //content: 'book_info.php?bid='+bid //iframe的url content:$("#j_book_info_content") }); } /** ** 访问时需要密码 ** **/ function show_pass_window(bid){ $("#j_book_pass_content").find("input[name='book_id']").val(bid); layer.open({ id:"layer_pass111", type: 1, title: '请填写阅读密码', shadeclose: true, shade: 0.8, area: ['28vw', 'auto'], content:$("#j_book_pass_content") }); } /** **弹出需要填写的框 **/ function show_window(bid,info,password){ if(parseint(password) == 1){ show_pass_window(bid); }else{ if(parseint(info)==1){ show_info_window(bid,0); }else{ show_book(bid,0); } } } //禁用右键 // document.oncontextmenu = function () { return false; }; //禁用开发者工具f12 // document.onkeydown = function () { // if (window.event && window.event.keycode == 123) { // event.keycode = 0; // event.returnvalue = false; // return false; // } // }; _initajaxloadingbox(); var intervalobj; //timer变量,控制时间 var count = 60; //间隔函数,1秒执行 var curcount; //当前剩余秒数 var regmobile = /^1\d{10}$/; $(function(){ $(".j_read").bind("click",function(){ var bid = $(this).attr("data-id"); var data ={book_id:bid}; _ajaxdata( ajaxurl.check_book, data, "post", null, function (data) { if (data.status == 200 ) { show_window(bid,data.book_info,data.book_password); } else { layer.msg(data.info); return; } }, function () { }); }) $(".j_ajax_form_info").submit(function () { submit_ajax_form_info(); return false; }) $(".j_ajax_form_pass").submit(function () { submit_ajax_form_pass(); return false; }) })