var home_Path = document.location.protocol + '//' + window.document.location.hostname + '/'; var userAgent = window.navigator.userAgent.toLowerCase(); console.log(userAgent); var norunAI = ["android", "iphone", "ipod", "ipad", "windows phone"]; var norunFlag = false; for (var i = 0; i < norunAI.length; i++) { if (userAgent.indexOf(norunAI[i]) > -1) { norunFlag = true; break; } } if (!window.WebGLRenderingContext) { norunFlag = true; } if (!norunFlag) { var hitFlag = false; var AIFadeFlag = false; var liveTlakTimer = null; var sleepTimer_ = null; var AITalkFlag = false; var talkNum = 0; (function () { function renderTip(template, context) { var tokenReg = /(\\)?\{([^\{\}\\]+)(\\)?\}/g; return template.replace(tokenReg, function (word, slash1, token, slash2) { if (slash1 || slash2) { return word.replace(/\\/g, ''); } var variables = token.replace(/\s/g, '').split('.'); var currentObject = context; var i, length, variable; for (i = 0, length = variables.length; i < length; ++i) { variable = variables[i]; currentObject = currentObject[variable]; if (currentObject === undefined || currentObject === null) return ''; } return currentObject; }); } String.prototype.renderTip = function (context) { return renderTip(this, context); }; var re = /x/; console.log(re); re.toString = function () { showMessage('哈哈,你打开了控制台,是想要看看我的秘密吗?', 5000); return ''; }; $(document).on('copy', function () { showMessage('你都复制了些什么呀,转载要记得加上出处哦~~', 5000); }); function initTips() { $.ajax({ cache: true, url: message_Path + 'message.json', dataType: "json", success: function (result) { $.each(result.mouseover, function (index, tips) { $(tips.selector).mouseover(function () { var text = tips.text; if (Array.isArray(tips.text)) text = tips.text[Math.floor(Math.random() * tips.text.length + 1) - 1]; text = text.renderTip({ text: $(this).text() }); showMessage(text, 3000); talkValTimer(); clearInterval(liveTlakTimer); liveTlakTimer = null; }); $(tips.selector).mouseout(function () { showHitokoto(); if (liveTlakTimer == null) { liveTlakTimer = window.setInterval(function () { showHitokoto(); }, 15000); }; }); }); $.each(result.click, function (index, tips) { $(tips.selector).click(function () { if (hitFlag) { return false } hitFlag = true; setTimeout(function () { hitFlag = false; }, 8000); var text = tips.text; if (Array.isArray(tips.text)) text = tips.text[Math.floor(Math.random() * tips.text.length + 1) - 1]; text = text.renderTip({ text: $(this).text() }); showMessage(text, 3000); }); clearInterval(liveTlakTimer); liveTlakTimer = null; if (liveTlakTimer == null) { liveTlakTimer = window.setInterval(function () { showHitokoto(); }, 15000); }; }); } }); } initTips(); var text; if (document.referrer !== '' && document.referrer.split('/')[2] !== window.location.host) { var referrer = document.createElement('a'); referrer.href = document.referrer; text = '嗨!来自 ' + referrer.hostname + ' 的朋友!'; var domain = referrer.hostname.split('.')[1]; if (domain == 'baidu') { text = '嗨! 来自 百度搜索 的朋友!
欢迎访问「 ' + document.title.split(' | ')[0] + ' 」'; } else if (domain == 'so') { text = '嗨! 来自 360搜索 的朋友!
欢迎访问「 ' + document.title.split(' | ')[0] + ' 」'; } else if (domain == 'google') { text = '嗨! 来自 谷歌搜索 的朋友!
欢迎访问「 ' + document.title.split(' | ')[0] + ' 」'; } } else { if (window.location.href == home_Path) { //主页URL判断,需要斜杠结尾 var now = (new Date()).getHours(); if (now > 23 || now <= 5) { text = '你是夜猫子呀?这么晚还不睡觉,明天起的来嘛?'; } else if (now > 5 && now <= 7) { text = '早上好!一日之计在于晨,美好的一天就要开始了!'; } else if (now > 7 && now <= 11) { text = '上午好!工作顺利嘛,不要久坐,多起来走动走动哦!'; } else if (now > 11 && now <= 14) { text = '中午了,工作了一个上午,现在是午餐时间!'; } else if (now > 14 && now <= 17) { text = '午后很容易犯困呢,今天的运动目标完成了吗?'; } else if (now > 17 && now <= 19) { text = '傍晚了!窗外夕阳的景色很美丽呢,最美不过夕阳红~~'; } else if (now > 19 && now <= 21) { text = '晚上好,今天过得怎么样?'; } else if (now > 21 && now <= 23) { text = '已经这么晚了呀,早点休息吧,晚安~~'; } else { text = '嗨~ 快来逗我玩吧!'; } } else { text = '欢迎阅读「 ' + document.title.split(' | ')[0] + ' 」'; } } showMessage(text, 12000); })(); liveTlakTimer = setInterval(function () { showHitokoto(); }, 15000); function showHitokoto() { if (sessionStorage.getItem("Sleepy") !== "1") { if (!AITalkFlag) { $.getJSON('https://hitokoto.mayx.eu.org/', function (result) { talkValTimer(); showMessage(result.hitokoto, 0); }); } } else { hideMessage(0); if (sleepTimer_ == null) { sleepTimer_ = setInterval(function () { checkSleep(); }, 200); } console.log(sleepTimer_); } } function checkSleep() { var sleepStatu = sessionStorage.getItem("Sleepy"); if (sleepStatu !== '1') { talkValTimer(); showMessage('你回来啦~', 0); clearInterval(sleepTimer_); sleepTimer_ = null; } } function showMessage(text, timeout) { if (Array.isArray(text)) text = text[Math.floor(Math.random() * text.length + 1) - 1]; //console.log('showMessage', text); $('.message').stop(); if (text instanceof EventSource) { var outputContainer = $('.message')[0]; var eventFlag = false; text.onmessage = (event) => { if (event.data == "[DONE]") { text.close(); return; } else { if (!eventFlag) { talkValTimer(); outputContainer.textContent = ""; eventFlag = true; } const data = JSON.parse(event.data); outputContainer.textContent += data.response; } } } else { $('.message').html(text); } $('.message').fadeTo(200, 1); //if (timeout === null) timeout = 5000; //hideMessage(timeout); } function talkValTimer() { $('#live_talk').val('1'); } function hideMessage(timeout) { //$('.message').stop().css('opacity',1); if (timeout === null) timeout = 5000; $('.message').delay(timeout).fadeTo(200, 0); } function initLive2d() { $("#landlord").mouseenter(function () { $(".live_ico_box").fadeIn(); }); $("#landlord").mouseleave(function () { $(".live_ico_box").fadeOut(); }); $('#hideButton').on('click', function () { if (AIFadeFlag) { return false; } else { AIFadeFlag = true; localStorage.setItem("live2dhidden", "0"); $('#landlord').fadeOut(200); $('#open_live2d').delay(200).fadeIn(200); setTimeout(function () { AIFadeFlag = false; }, 300); } }); $('#open_live2d').on('click', function () { if (AIFadeFlag) { return false; } else { AIFadeFlag = true; localStorage.setItem("live2dhidden", "1"); $('#open_live2d').fadeOut(200); $('#landlord').delay(200).fadeIn(200); setTimeout(function () { AIFadeFlag = false; }, 300); } }); $('#youduButton').on('click', function () { if ($('#youduButton').hasClass('doudong')) { var typeIs = $('#youduButton').attr('data-type'); $('#youduButton').removeClass('doudong'); $('body').removeClass(typeIs); $('#youduButton').attr('data-type', ''); } else { var duType = $('#duType').val(); var duArr = duType.split(","); var dataType = duArr[Math.floor(Math.random() * duArr.length)]; $('#youduButton').addClass('doudong'); $('#youduButton').attr('data-type', dataType); $('body').addClass(dataType); } }); if (talkAPI !== "") { $('#showInfoBtn').on('click', function () { var live_statu = $('#live_statu_val').val(); if (live_statu == "0") { return } else { $('#live_statu_val').val("0"); $('.live_talk_input_body').fadeOut(500); AITalkFlag = false; showHitokoto(); $('#showTalkBtn').show(); $('#showInfoBtn').hide(); } }); $('#showTalkBtn').on('click', function () { var live_statu = $('#live_statu_val').val(); if (live_statu == "1") { return } else { $('#live_statu_val').val("1"); $('.live_talk_input_body').fadeIn(500); AITalkFlag = true; $('#showTalkBtn').hide(); $('#showInfoBtn').show(); } }); $('#talk_send').on('click', function () { var info_ = $('#AIuserText').val(); // var userid_ = $('#AIuserName').val(); let add_id = ""; if ($('#load_this').prop("checked")) { add_id = "&id=" + encodeURIComponent($('#post_id').val()); } if (info_ == "") { showMessage('写点什么吧!', 0); return; } showMessage('思考中~', 0); const evSource = new EventSource(talkAPI + "?info=" + encodeURIComponent(info_) + add_id); showMessage(evSource); }); } else { $('#showInfoBtn').hide(); $('#showTalkBtn').hide(); } //获取音乐信息初始化 var bgmListInfo = $('input[name=live2dBGM]'); if (bgmListInfo.length == 0) { $('#musicButton').hide(); } else { var bgmPlayNow = parseInt($('#live2d_bgm').attr('data-bgm')); var bgmPlayTime = 0; var live2dBGM_Num = sessionStorage.getItem("live2dBGM_Num"); var live2dBGM_PlayTime = sessionStorage.getItem("live2dBGM_PlayTime"); if (live2dBGM_Num) { if (live2dBGM_Num <= $('input[name=live2dBGM]').length - 1) { bgmPlayNow = parseInt(live2dBGM_Num); } } if (live2dBGM_PlayTime) { bgmPlayTime = parseInt(live2dBGM_PlayTime); } var live2dBGMSrc = bgmListInfo.eq(bgmPlayNow).val(); $('#live2d_bgm').attr('data-bgm', bgmPlayNow); $('#live2d_bgm').attr('src', live2dBGMSrc); $('#live2d_bgm')[0].currentTime = bgmPlayTime; $('#live2d_bgm')[0].volume = 0.5; var live2dBGM_IsPlay = sessionStorage.getItem("live2dBGM_IsPlay"); var live2dBGM_WindowClose = sessionStorage.getItem("live2dBGM_WindowClose"); if (live2dBGM_IsPlay == '0' && live2dBGM_WindowClose == '0') { $('#live2d_bgm')[0].play(); $('#musicButton').addClass('play'); } sessionStorage.setItem("live2dBGM_WindowClose", '1'); $('#musicButton').on('click', function () { if ($('#musicButton').hasClass('play')) { $('#live2d_bgm')[0].pause(); $('#musicButton').removeClass('play'); sessionStorage.setItem("live2dBGM_IsPlay", '1'); } else { $('#live2d_bgm')[0].play(); $('#musicButton').addClass('play'); sessionStorage.setItem("live2dBGM_IsPlay", '0'); } }); window.onbeforeunload = function () { sessionStorage.setItem("live2dBGM_WindowClose", '0'); if ($('#musicButton').hasClass('play')) { sessionStorage.setItem("live2dBGM_IsPlay", '0'); } } document.getElementById('live2d_bgm').addEventListener("timeupdate", function () { var live2dBgmPlayTimeNow = document.getElementById('live2d_bgm').currentTime; sessionStorage.setItem("live2dBGM_PlayTime", live2dBgmPlayTimeNow); }); document.getElementById('live2d_bgm').addEventListener("ended", function () { var listNow = parseInt($('#live2d_bgm').attr('data-bgm')); listNow++; if (listNow > $('input[name=live2dBGM]').length - 1) { listNow = 0; } var listNewSrc = $('input[name=live2dBGM]').eq(listNow).val(); sessionStorage.setItem("live2dBGM_Num", listNow); $('#live2d_bgm').attr('src', listNewSrc); $('#live2d_bgm')[0].play(); $('#live2d_bgm').attr('data-bgm', listNow); }); document.getElementById('live2d_bgm').addEventListener("error", function () { $('#live2d_bgm')[0].pause(); $('#musicButton').removeClass('play'); showMessage('音乐似乎加载不出来了呢!', 0); }); } // //获取用户名 // var live2dUser = sessionStorage.getItem("live2duser"); // if(live2dUser !== null){ // $('#AIuserName').val(live2dUser); // } //获取位置 var landL = sessionStorage.getItem("historywidth"); var landB = sessionStorage.getItem("historyheight"); if (landL == null || landB == null) { landL = '5px' landB = '0px' } $('#landlord').css('left', landL + 'px'); $('#landlord').css('bottom', landB + 'px'); //移动 function getEvent() { return window.event || arguments.callee.caller.arguments[0]; } var smcc = document.getElementById("landlord"); var moveX = 0; var moveY = 0; var moveBottom = 0; var moveLeft = 0; var moveable = false; var docMouseMoveEvent = document.onmousemove; var docMouseUpEvent = document.onmouseup; smcc.onmousedown = function () { var ent = getEvent(); moveable = true; moveX = ent.clientX; moveY = ent.clientY; var obj = smcc; moveBottom = parseInt(obj.style.bottom); moveLeft = parseInt(obj.style.left); if (isFirefox = navigator.userAgent.indexOf("Firefox") > 0) { window.getSelection().removeAllRanges(); } document.onmousemove = function () { if (moveable) { var ent = getEvent(); var x = moveLeft + ent.clientX - moveX; var y = moveBottom + (moveY - ent.clientY); obj.style.left = x + "px"; obj.style.bottom = y + "px"; } }; document.onmouseup = function () { if (moveable) { var historywidth = obj.style.left; var historyheight = obj.style.bottom; historywidth = historywidth.replace('px', ''); historyheight = historyheight.replace('px', ''); sessionStorage.setItem("historywidth", historywidth); sessionStorage.setItem("historyheight", historyheight); document.onmousemove = docMouseMoveEvent; document.onmouseup = docMouseUpEvent; moveable = false; moveX = 0; moveY = 0; moveBottom = 0; moveLeft = 0; } }; }; } $(document).ready(function () { var AIimgSrc = [ home_Path + message_Path + "model/histoire/histoire.1024/texture_00.png", home_Path + message_Path + "model/histoire/histoire.1024/texture_01.png", home_Path + message_Path + "model/histoire/histoire.1024/texture_02.png", home_Path + message_Path + "model/histoire/histoire.1024/texture_03.png", home_Path + message_Path + "images/info.png", home_Path + message_Path + "images/music.png", home_Path + message_Path + "images/pasue.png", home_Path + message_Path + "images/quite.png", home_Path + message_Path + "images/talk.png", home_Path + message_Path + "images/youdu.png" ] var images = []; var imgLength = AIimgSrc.length; var loadingNum = 0; for (var i = 0; i < imgLength; i++) { images[i] = new Image(); images[i].src = AIimgSrc[i]; images[i].onload = function () { loadingNum++; if (loadingNum === imgLength) { var live2dhidden = localStorage.getItem("live2dhidden"); if (live2dhidden === "0") { setTimeout(function () { $('#open_live2d').fadeIn(200); }, 1300); } else { setTimeout(function () { $('#landlord').fadeIn(200); }, 1300); } setTimeout(function () { loadlive2d("live2d", message_Path + "model/histoire/model.json"); }, 1000); initLive2d(); images = null; } } } }); }