window.cccField = ''; window.apisMoveDivButton2Timer = ''; window.apisMoveDivButton2Timer4Custorm = []; window.actualFlag = false; window.stopFlag = false; window.uploadImgsCategoryField = []; window.uploadMusicsCategoryField = []; window.uploadExchangeCategoryField = []; $(function () { initOther(); }); /*var dragJob=false; $(document).on("mousedown", '.watchlistpreview-top', function (e) { dragJob = true; }); document.onmousemove = function (e) { if (dragJob) { var e = e || window.event; var height = $(document.body).height(); var width = $(window).width(); var widthJob = $("#watchlistpreview").width(); var heightJob = $("#watchlistpreview").height(); var left = e.clientX - widthJob / 2; var top = e.clientY - 18 + $(document).scrollTop(); if (top >= 0 && top < height - heightJob) { $("#watchlistpreview").css("top", top); } if (left >= 0 && left < width - widthJob) { $("#watchlistpreview").css("left", left); } return false; } }; $(document).mouseup(function (e) { dragJob = false; });*/ /** * 初始化其他操作 */ function initOther() { initOther4Select(); handleSelectChange($("select#apis-move-select,select#apis-quiet-select")); $(".apis-move-div-button1,.apis-quiet-div-button1").click(function () { var aa = $(this).attr("slideDiv"); var display = $('#' + aa); if (display.css('display') == 'block') { display.slideUp("slow"); //display.css("display", "none"); $(this).html('展开'); } else { display.slideDown("slow"); //display.css("display", "block"); $(this).html('收起'); } }); $(".apis-move-div-button2").click(function () { var this_ = $(this); stopFlag = false; if (!actualFlag) { var selectedOption = $("select#apis-move-select").find("option:selected"); var nameEn = selectedOption.attr("nameEn"); if (nameEn === 'needCustom') { $.each($(".needCustomInput"), function (index, obj) { var url = $(obj).attr("url"); var typetype = $(obj).attr("typetype"); var nameEn2 = $(obj).attr("nameEn"); var slideDiv = $(this_).attr("slideDiv") + '-' + $(obj).attr("id"); apisMoveDivButton2Timer4Custorm[index] = setInterval(mainSearch, 3000, url, nameEn2, slideDiv, typetype, "1"); }); actualFlag = true; } else { var url = selectedOption.attr("url"); var typetype = selectedOption.attr("typetype"); var slideDiv = $(this).attr("slideDiv"); apisMoveDivButton2Timer = setInterval(mainSearch, 3000, url, nameEn, slideDiv, typetype, "2"); actualFlag = true; } } }); $(".apis-quiet-div-button2").click(function () { stopFlag = false; var selectedOption = $("select#apis-quiet-select").find("option:selected"); var url = selectedOption.attr("url"); var typetype = selectedOption.attr("typetype"); var nameEn = selectedOption.attr("nameEn"); var slideDiv = $(this).attr("slideDiv"); mainSearch(url, nameEn, slideDiv, typetype,"2"); }); initOther4Popup(); $(".apis-move-div-button3").click(function () { ownClearInterval(); }); } function ownClearInterval() { if (actualFlag) { if (apisMoveDivButton2Timer != undefined && apisMoveDivButton2Timer != null) { clearInterval(apisMoveDivButton2Timer); } if (apisMoveDivButton2Timer4Custorm != undefined && apisMoveDivButton2Timer != null) { $.each(apisMoveDivButton2Timer4Custorm, function (index, obj) { clearInterval(obj); }); } //$("#apis-move-content").find("tbody.contentTD").html(''); //$("#apis-move-content").find("span.contentSPAN").html(''); actualFlag = false; } } function initOther4Select() { $.ajax({ url: "coin/findApiConfig", //请求的url地址 dataType: "json", //返回格式为json data: { "userName": getCookie('username') }, //参数值 type: "post", //请求方式 //contentType: "application/json;charset=utf-8", async: false, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { data = data.data; var quietStr = ''; var moveStr = ''; var move2Str = ''; $.each(data, function (index, obj) { if (obj.type2 === 1) { if (obj.type === 0) { var nameEn = $('#' + obj.nameEn); nameEn.attr('nameEn', obj.nameEn); nameEn.attr('url', obj.url); nameEn.attr('typetype', obj.type); nameEn.attr('returnEn', obj.returnEn); nameEn.attr('returnCn', obj.returnCn); move2Str += obj.nameCn + '|'; } else { moveStr += ''; } } else if (obj.type2 === 2) { quietStr += ''; } // watchlist if (obj.nameEn === 'watchlist') { var watchlistTrackCategoryStr = ''; $.each(obj.trackCategoryList, function (index2, obj2) { watchlistTrackCategoryStr += ''; }); $("#apis-quiet-div-watchlist-trackCategoryField").append(watchlistTrackCategoryStr); var watchlistTrackCategory2Str = ''; $.each(obj.trackCategory2List, function (index2, obj2) { watchlistTrackCategory2Str += ''; }); $("#apis-quiet-div-watchlist-trackCategory2Field").append(watchlistTrackCategory2Str); } else if (obj.nameEn === 'image') { var uploadImageCategoryStr = ''; $.each(obj.otherAttrList, function (index2, obj2) { uploadImageCategoryStr += ''; }); // $("#apis-quiet-div-uploadImgs-categoryField").append(uploadImageCategoryStr); uploadImgsCategoryField = obj.otherAttrList; $("#apis-quiet-div-image-categoryField").append(uploadImageCategoryStr); } else if (obj.nameEn === 'music') { var uploadMusicCategoryStr = ''; $.each(obj.musicCategoryList, function (index2, obj2) { uploadMusicCategoryStr += ''; }); // $("#apis-quiet-div-uploadMusics-categoryField").append(uploadMusicCategoryStr); uploadMusicsCategoryField = obj.musicCategoryList; $("#apis-quiet-div-music-categoryField").append(uploadMusicCategoryStr); } else if (obj.nameEn === 'currentHolding') { var exchangeCategoryStr = ''; $.each(obj.exchangeCategoryList, function (index2, obj2) { exchangeCategoryStr += ''; }); uploadExchangeCategoryField = obj.exchangeCategoryList; $("#apis-quiet-div-currentHolding-categoryField").append(exchangeCategoryStr); } else if (obj.nameEn === 'bookmark') { var categoryStr = ''; $.each(obj.categoryList, function (index2, obj2) { categoryStr += ''; }); $("#apis-quiet-div-bookmark-categoryField").append(categoryStr); } }); move2Str = ''; $("select#apis-move-select").html(move2Str + moveStr); $("select#apis-quiet-select").html(quietStr); $("select#apis-move-select,select#apis-quiet-select").change(function () { handleSelectChange($(this)); stopFlag = true; }); } else { //alert(data.message); } }, beforeSend: function () { }, complete: function () { }, error: function (data) { //请求出错处理 alert('error:' + data); } }); } function handleSelectChange(objj) { $.each(objj, function (index, obj) { var selectedOption = $(obj).find("option:selected"); var type = selectedOption.attr("type"); var nameEn = selectedOption.attr("nameEn"); if ($(obj).attr("id") === 'apis-move-select') { ownClearInterval(); } if (type === '9999') { $("#apis-move-content").find("div").slideUp("slow"); if (nameEn === 'needCustom') { $.each($(".needCustomInput"), function (index, ob) { var returnEn = $(ob).attr("returnen").split(","); var returnCn = $(ob).attr("returncn").split(","); var theadStr = ''; $.each(returnEn, function (index, o) { theadStr += '' + returnCn[index] + ''; }); $("#apis-move-content-" + $(ob).attr("id")).find("span.contentSPAN").html('0'); $("#apis-move-content-" + $(ob).attr("id")).find("tr.contentTH").html(theadStr); $("#apis-move-content-" + $(ob).attr("id")).find("tbody.contentTD").html(''); $("#apis-move-content-" + $(ob).attr("id")).slideDown("slow"); }); } else { var returnEn = selectedOption.attr("returnen").split(","); var returnCn = selectedOption.attr("returncn").split(","); var theadStr = ''; $.each(returnEn, function (index, ob) { theadStr += '' + returnCn[index] + ''; }); $("#apis-move-content-other").find("span.contentSPAN").html('0'); $("#apis-move-content-other").find("tr.contentTH").html(theadStr); $("#apis-move-content-other").find("tbody.contentTD").html(''); $("#apis-move-content-other").slideDown("slow"); } } else { var returnEn = selectedOption.attr("returnen").split(","); var returnCn = selectedOption.attr("returncn").split(","); var theadStr = ''; $.each(returnEn, function (index, obj) { theadStr += '' + returnCn[index] + ''; }); if (nameEn === 'watchlist' || nameEn === 'image' || nameEn === 'music') { theadStr += '操作'; } if (nameEn === 'music') { $("#audioDiv").css("display", "block"); $("#audio").on('ended', function () { let totalCount = $("div#apis-quiet-content").find("span.contentSPAN").text(); if (totalCount === 0) { return; } let playRule = $("#apis-quiet-div-music-playRuleField").val(); if (playRule === '1') { let randomNum = Math.floor(Math.random() * totalCount) + 1; let musicPageNo = $("#apis-quiet-div-music-pageNo").val(); let musicPageSize = $("#apis-quiet-div-music-pageSize").val(); if (randomNum >= (musicPageNo - 1) * musicPageSize + 1 && randomNum <= musicPageNo * musicPageSize) { let startNum = randomNum - ((musicPageNo - 1) * musicPageSize); $('#apis-quiet-content').find(".contentTD > tr").eq(startNum - 1).find("button.apis-quiet-div-music-play").click(); } else { let toMusicPageNo = Math.floor(randomNum / musicPageSize + 1); $("#apis-quiet-div-music-pageNo").val(toMusicPageNo); $("#apis-quiet-div").find("button.apis-quiet-div-button2").click(); let startNum = randomNum - ((toMusicPageNo - 1) * musicPageSize); setTimeout(function () { $('#apis-quiet-content').find(".contentTD > tr").eq(startNum - 1).find("button.apis-quiet-div-music-play").click(); }, 3000); } } else if (playRule === '2') { let nextTr = $("#apis-quiet-content").find(".contentTD").find('td.music_highlight').parent("tr").next("tr"); if (nextTr.length > 0) { $(this).find("button.apis-quiet-div-music-play").click(); } else { let musicPageNo = $("#apis-quiet-div-music-pageNo").val(); let musicPages = $("#apis-quiet-div-music-pages").val(); if (musicPageNo < musicPages) { $("#apis-quiet-div-music").find("button[pageo='next']").click(); } else { $("#apis-quiet-div-music-pageNo").val(1); $("#apis-quiet-div").find("button.apis-quiet-div-button2").click(); } setTimeout(function () { $('#apis-quiet-content').find(".contentTD > tr").eq(0).find("button.apis-quiet-div-music-play").click(); }, 3000); } } else if (playRule === '3') { $("#apis-quiet-content").find(".contentTD").find('td.music_highlight').parent("tr").find("button.apis-quiet-div-music-play").click(); } }); $("button.apis-quiet-div-music-start").click(function () { let totalCount = $("div#apis-quiet-content").find("span.contentSPAN").text(); if (totalCount === 0) { return; } let playRule = $("#apis-quiet-div-music-playRuleField").val(); if (playRule === '1') { let randomNum = Math.floor(Math.random() * totalCount) + 1; let musicPageNo = $("#apis-quiet-div-music-pageNo").val(); let musicPageSize = $("#apis-quiet-div-music-pageSize").val(); if (randomNum >= (musicPageNo - 1) * musicPageSize + 1 && randomNum <= musicPageNo * musicPageSize) { let startNum = randomNum - ((musicPageNo - 1) * musicPageSize); $('#apis-quiet-content').find(".contentTD > tr").eq(startNum - 1).find("button.apis-quiet-div-music-play").click(); } else { let toMusicPageNo = Math.floor(randomNum / musicPageSize + 1); $("#apis-quiet-div-music-pageNo").val(toMusicPageNo); $("#apis-quiet-div").find("button.apis-quiet-div-button2").click(); let startNum = randomNum - ((toMusicPageNo - 1) * musicPageSize); setTimeout(function () { $('#apis-quiet-content').find(".contentTD > tr").eq(startNum - 1).find("button.apis-quiet-div-music-play").click(); }, 3000); } } else if (playRule === '2') { $('#apis-quiet-content').find(".contentTD > tr").eq(0).find("button.apis-quiet-div-music-play").click(); } else if (playRule === '3') { $('#apis-quiet-content').find(".contentTD > tr").eq(0).find("button.apis-quiet-div-music-play").click(); } }); } else { $("#audioDiv").css("display", "none"); $("#audio > source").attr("src", ""); $("#audio")[0].load(); } if (nameEn === 'currentHolding') { $("span.contentSPAN2").css("display", "inline"); $("span.contentSPAN2").dblclick(function () { if ($(this).html().includes("***")) { $(this).html($(this).attr("realV")); } else { $(this).html(' | ' + "***"); } }); } else { $("span.contentSPAN2").css("display", "none"); $("span.contentSPAN2").unbind("dblclick"); } $(obj).parent("div").next("div").find("span.contentSPAN").html('0'); $(obj).parent("div").next("div").find("tr.contentTH").html(theadStr); $(obj).parent("div").next("div").find("tbody.contentTD").html(''); $("div[id^=apis-quiet-div-]").css("display", "none"); $("#apis-quiet-div-" + nameEn).css("display", "block"); $("#apis-quiet-div-" + nameEn).find("input[id$=pageNo]").val(1); $("div[id^=apis-quiet-div-]").find($("button.apis-quiet-div-button3")).unbind("click"); $("div[id^=apis-quiet-div-]").find($("button.apis-quiet-div-button3")).click(function () { stopFlag = false; var url = selectedOption.attr("url"); var typetype = selectedOption.attr("typetype"); var slideDiv = $(this).attr("slideDiv"); var pageNoVar = $("#" + $(this).parent().attr("id") + "-pageNo"); var pageO = $(this).attr("pageO"); var beforePageNo = $(pageNoVar).val(); if (pageO === 'prev') { if (beforePageNo > 1) { $(pageNoVar).val(Number(beforePageNo) - 1); } } else if (pageO === 'next') { if (beforePageNo < Number($("#apis-quiet-div-" + nameEn).find("input[id$=pages]").val())) { $(pageNoVar).val(Number(beforePageNo) + 1); } } mainSearch(url, nameEn, slideDiv, typetype, "2"); }); // 对输入框、选择框加入对应事件,方便及时筛选查询操作 $("div[id^=apis-quiet-div-]").find("input[id$=keyword]").unbind("keydown"); $("#apis-quiet-div-" + nameEn).find("input[id$=keyword]").keydown(function (e) { if (e.keyCode == 13) { $(".apis-quiet-div-button2").click(); } }); $("div[id^=apis-quiet-div-]").find("select").unbind("change"); $("#apis-quiet-div-" + nameEn).find("select").change(function (e) { if ($(this).attr("id") === 'apis-quiet-div-music-playRuleField') { return; } $(".apis-quiet-div-button2").click(); }); } }); $(objj).parent("div").next("div").find(".contentTH").find("th").dblclick(function () { cccField = $(this).attr("returnEn"); }); } /** * 多条件搜索 * @param pageNo */ function mainSearch(url, nameEn, slideDiv, typetype, needCustomFlag) { var jsonData = {}; jsonData.url = url; jsonData.nameEn = nameEn; if (nameEn === 'currentPlan' || nameEn === 'orderMarginCoinCurrent') { jsonData.chaRateSort = $("#chaRateSort").val(); } else if (nameEn === 'monitorCurrency') { jsonData.changeUtcSort = $("#changeUtcSort").val(); } else if (nameEn === 'allPositionv2') { jsonData.unrealizedPLSort = $("#unrealizedPLSort").val(); } else if (nameEn === 'orderHistoryProductType') { jsonData.pageNo = $("#apis-quiet-div-orderHistoryProductType-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-orderHistoryProductType-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-orderHistoryProductType-keyword").val(); jsonData.sortField = $("#apis-quiet-div-orderHistoryProductType-sortField").val(); jsonData.sort = $("#apis-quiet-div-orderHistoryProductType-sort").val(); jsonData.side = $("#apis-quiet-div-orderHistoryProductType-side").val(); } else if (nameEn === 'traderList') { jsonData.pageNo = $("#apis-quiet-div-traderList-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-traderList-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-traderList-keyword").val(); jsonData.sortField = $("#apis-quiet-div-traderList-sortField").val(); jsonData.sort = $("#apis-quiet-div-traderList-sort").val(); jsonData.canTrace = $("#apis-quiet-div-traderList-canTrace").val(); } else if (nameEn === 'watchlist') { jsonData.pageNo = $("#apis-quiet-div-watchlist-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-watchlist-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-watchlist-keyword").val(); jsonData.sortField = $("#apis-quiet-div-watchlist-sortField").val(); jsonData.sort = $("#apis-quiet-div-watchlist-sort").val(); jsonData.filterField = $("#apis-quiet-div-watchlist-filterField").val(); jsonData.trackCategoryField = $("#apis-quiet-div-watchlist-trackCategoryField").val(); jsonData.trackCategory2Field = $("#apis-quiet-div-watchlist-trackCategory2Field").val(); jsonData.cexFilterField = $("#apis-quiet-div-watchlist-cexFilterField").val(); jsonData.userName = getCookie('username'); } else if (nameEn === 'image') { jsonData.pageNo = $("#apis-quiet-div-image-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-image-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-image-keyword").val(); jsonData.sortField = $("#apis-quiet-div-image-sortField").val(); jsonData.sort = $("#apis-quiet-div-image-sort").val(); jsonData.categoryField = $("#apis-quiet-div-image-categoryField").val(); } else if (nameEn === 'cmcmap') { jsonData.pageNo = $("#apis-quiet-div-cmcmap-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-cmcmap-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-cmcmap-keyword").val(); jsonData.sortField = $("#apis-quiet-div-cmcmap-sortField").val(); jsonData.sort = $("#apis-quiet-div-cmcmap-sort").val(); jsonData.filterField = $("#apis-quiet-div-cmcmap-filterField").val(); } else if (nameEn === 'music') { jsonData.pageNo = $("#apis-quiet-div-music-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-music-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-music-keyword").val(); jsonData.sortField = $("#apis-quiet-div-music-sortField").val(); jsonData.sort = $("#apis-quiet-div-music-sort").val(); jsonData.categoryField = $("#apis-quiet-div-music-categoryField").val(); jsonData.scoreField = $("#apis-quiet-div-music-scoreField").val(); } else if (nameEn === 'currentHolding') { jsonData.pageNo = $("#apis-quiet-div-currentHolding-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-currentHolding-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-currentHolding-keyword").val(); jsonData.sortField = $("#apis-quiet-div-currentHolding-sortField").val(); jsonData.sort = $("#apis-quiet-div-currentHolding-sort").val(); jsonData.categoryField = $("#apis-quiet-div-currentHolding-categoryField").val(); jsonData.status = $("#apis-quiet-div-currentHolding-status").val(); } else if (nameEn === 'bookmark') { jsonData.pageNo = $("#apis-quiet-div-bookmark-pageNo").val(); jsonData.pageSize = $("#apis-quiet-div-bookmark-pageSize").val(); jsonData.keyword = $("#apis-quiet-div-bookmark-keyword").val(); jsonData.sortField = $("#apis-quiet-div-bookmark-sortField").val(); jsonData.sort = $("#apis-quiet-div-bookmark-sort").val(); jsonData.categoryField = $("#apis-quiet-div-bookmark-categoryField").val(); jsonData.subCategoryField = $("#apis-quiet-div-bookmark-subCategoryField").val(); } $.ajax({ url: "coin/mainSearch", //请求的url地址 dataType: "json", //返回格式为json data: JSON.stringify(jsonData), //参数值 type: "post", //请求方式 contentType: "application/json;charset=utf-8", async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { if (stopFlag) { return; } if (nameEn === 'orderHistoryProductType' || nameEn === 'traderList' || nameEn === 'watchlist' || nameEn === 'image' || nameEn === 'cmcmap' || nameEn === 'music' || nameEn === 'currentHolding' || nameEn === 'bookmark') { $("#apis-quiet-div-" + nameEn).find("input[id$=pages]").val(data.data.pages); $('#' + slideDiv).find("span.contentSPAN").html(data.data.total); data = data.data.list; } else { data = data.data; $('#' + slideDiv).find("span.contentSPAN").html(data.length); } var returnEn = ''; if (needCustomFlag === '1') { returnEn = $("#" + nameEn).attr("returnen").split(","); } else { var selectedOption = $('option[nameen="' + nameEn + '"]'); returnEn = selectedOption.attr("returnen").split(","); } var str = ''; var title = 'Coin主页|'; for (var i = 0; i < data.length; i++) { var dataDetail = data[i]; if (nameEn === 'allPositionv2') { var bbbField = $(".apis-move-div-input1").val(); var symbol = dataDetail.symbol; if (cccField.length > 0 && bbbField.length > 0 && symbol.indexOf(bbbField) != -1) { title += bbbField + '|' + dataDetail[cccField]; $("title").html(title); } } str += ''; $.each(returnEn, function (index, obj) { var objStyle = dataDetail.hasOwnProperty(obj + 'Style') && dataDetail[obj + 'Style'] != null ? dataDetail[obj + 'Style'] : ''; var objContent = dataDetail.hasOwnProperty(obj) ? dataDetail[obj] : '--'; if (nameEn === 'currentHolding') { objContent = objContent != null ? objContent : '--'; }else if (nameEn === 'bookmark') { objContent = objContent != null ? objContent : '--'; } str += '' + objContent + ''; }); if (nameEn === 'watchlist') { str += ''; str += ''; str += ''; str += ''; } else if (nameEn === 'image') { str += ''; str += ''; str += ''; } else if (nameEn === 'music') { str += ''; str += ''; // str += ''; str += ''; str += ''; str += ''; str += ''; } str += ''; } if (nameEn === 'watchlist') { $(".apis-quiet-div-watchlist-detail").unbind("click"); $(".apis-quiet-div-watchlist-update").unbind("click"); $(".watchlistpreview-top-close").unbind("click"); } else if (nameEn === 'image') { $(".apis-quiet-div-image-delete").unbind("click"); } else if (nameEn === 'music') { $(".apis-quiet-div-music-delete").unbind("click"); $(".apis-quiet-div-music-play").unbind("click"); // $(".apis-quiet-div-music-pause").unbind("click"); $(".apis-quiet-div-music-detail").unbind("click"); $(".apis-quiet-div-music-update").unbind("click"); } $('#' + slideDiv).find(".contentTD").html(str); initContentEvent(nameEn); } else { //alert(data.message); } }, beforeSend: function () { if (typetype === '2') { $(".quiet-loading").css("display", "block"); } }, complete: function () { if (typetype === '2') { $(".quiet-loading").css("display", "none"); } if (nameEn === 'currentHolding') { getCurrentHoldingTotalAmout(jsonData); } }, error: function (data) { //请求出错处理 //alert('error:' + data); } }); } function getCurrentHoldingTotalAmout(jsonData) { $.ajax({ url: "coin/getCurrentHoldingTotalAmout", //请求的url地址 dataType: "json", //返回格式为json data: JSON.stringify(jsonData), //参数值 type: "post", //请求方式 contentType: "application/json;charset=utf-8", async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { let contentSPAN2 = $('#apis-quiet-content').find("span.contentSPAN2"); contentSPAN2.attr("realV", ' | ' + data.data); contentSPAN2.html(' | ' + "***"); } else { //alert(data.message); } }, beforeSend: function () { }, complete: function () { }, error: function (data) { } }); } /** * 初始化主内容事件 */ function initContentEvent(nameEn) { if ($(".apis-move-div-input1").val().length === 0) { $("title").html('Coin主页'); } if (nameEn === 'watchlist') { $("ul li").click(function () { $.ajax({ url: "coin/watchlistUpdate", //请求的url地址 dataType: "json", //返回格式为json data: { "symbol": $(this).attr("id"), "userName": getCookie('username'), "score": $(this).attr("val") }, //参数值 type: "post", //请求方式 async: false, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { $(".apis-quiet-div-button2").click(); } else { console.log("watchlistUpdate-score success error," + data); } }, beforeSend: function () { }, complete: function () { }, error: function (data) { //请求出错处理 console.log("watchlistUpdate-score error," + data); } }); }); $("#apis-quiet-content").find(".contentTD").find("tr td:nth-child(7)").dblclick(function () { $(this).parent("tr").find("button[operationtype='detail']").click(); }); $(".apis-quiet-div-watchlist-detail,.apis-quiet-div-watchlist-update").click(function () { if ($("#watchlistpreview").css("display") === 'none') { $("#watchlistpreview").css("display", "block"); } else if ($("#watchlistpreview").css("display") === 'block') { $("#watchlistpreview").css("display", "none"); } $(".watchlistpreview-top-close").click(function () { if ($("#watchlistpreview").css("display") === 'none') { $("#watchlistpreview").css("display", "block"); } else if ($("#watchlistpreview").css("display") === 'block') { $("#watchlistpreview").css("display", "none"); } $(this).unbind("click"); $(".watchlistpreview-top-submit").unbind("click"); $(".watchlistpreview-content").unbind("dblclick"); }); $(".watchlistpreview-content").dblclick(function () { $(".watchlistpreview-top-close").click(); }); $(".watchlistpreview-top-submit").click(function () { $.ajax({ url: "coin/watchlistUpdate", //请求的url地址 dataType: "json", //返回格式为json data: { "symbol": $(".watchlistpreview-content").find(".watchlistpreview-symbol").val(), "userName": getCookie('username'), "remark": $(".watchlistpreview-content").find("textarea").val() }, //参数值 type: "post", //请求方式 async: false, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { $(".watchlistpreview-top-close").click(); } else { console.log("watchlistpreview-top-submit success error," + data); } }, beforeSend: function () { }, complete: function () { }, error: function (data) { //请求出错处理 console.log("watchlistpreview-top-submit error," + data); } }); }); var operationType = $(this).attr("operationType"); if (operationType === 'detail') { $(".watchlistpreview-top-submit").css("display", "none"); } else if (operationType === 'update') { $(".watchlistpreview-top-submit").css("display", "block"); } var symbol = $(this).attr("symbolName"); $.ajax({ url: "coin/watchlistDetail/" + getCookie('username') + "/" + symbol + "/" + operationType, //请求的url地址 type: "get", //请求方式 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { data = data.data; if (operationType === 'detail') { $(".watchlistpreview-content").html(data); } else if (operationType === 'update') { var update4Text = ''; update4Text += ''; $(".watchlistpreview-content").html(update4Text); } } else { //alert(data.message); } }, beforeSend: function () { $(".watchlistpreview-content").html(""); $(".watchlistpreview-loading").css("display", "block"); }, complete: function () { $(".watchlistpreview-loading").css("display", "none"); }, error: function (data) { //请求出错处理 alert('error:' + data); } }); }); } else if (nameEn === 'image') { $(".apis-quiet-div-image-delete").click(function () { var symbol = $(this).attr("symbolName"); $.ajax({ url: "pictureInfo/deleteImgs/" + symbol, //请求的url地址 type: "get", //请求方式 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { $(".apis-quiet-div-button2").click(); } else { alert(data.message); } }, beforeSend: function () { $(".quiet-loading").css("display", "block"); }, complete: function () { $(".quiet-loading").css("display", "none"); }, error: function (data) { //请求出错处理 alert('error:' + data); } }); }); } else if (nameEn === 'music') { $("ul li").click(function () { $.ajax({ url: "musicInfo/musicUpdate", //请求的url地址 dataType: "json", //返回格式为json data: { "symbol": $(this).attr("id"), "score": $(this).attr("val") }, //参数值 type: "post", //请求方式 async: false, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { $(".apis-quiet-div-button2").click(); } else { console.log("musicUpdate-score success error," + data); } }, beforeSend: function () { }, complete: function () { }, error: function (data) { //请求出错处理 console.log("musicUpdate-score error," + data); } }); }); $(".apis-quiet-div-music-delete").click(function () { var symbol = $(this).attr("symbolName"); $.ajax({ url: "musicInfo/deleteMusics/" + symbol, //请求的url地址 type: "get", //请求方式 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { $(".apis-quiet-div-button2").click(); } else { alert(data.message); } }, beforeSend: function () { $(".quiet-loading").css("display", "block"); }, complete: function () { $(".quiet-loading").css("display", "none"); }, error: function (data) { //请求出错处理 alert('error:' + data); } }); }); $(".apis-quiet-div-music-play").click(function () { var symbol = $(this).attr("symbolName"); var symbol2 = $(this).attr("symbolName2"); if (symbol === null || symbol === '' || symbol === 'null') { symbol = symbol2; } var currentSrc = $("#audio > source").attr("src"); // 歌词展示 const audio = $("#audio")[0]; // 清除 ontimeupdate 事件处理函数 audio.ontimeupdate = null; //$(audio).unbind("timeupdate"); const lyricsContainer = $('#lyrics'); lyricsContainer.text(''); $.ajax({ url: "musicInfo/requestFile", // 替换为实际的 LRC 文件 URL data: { "url": symbol.replace('mp3', 'lrc') }, type: "post", //请求方式 async: false, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { if (data == null || $.trim(data) == "" || !data.success) { lyricsContainer.text("未获取到歌词!"); return; } const lrc = data.data; if (lrc === '') { lyricsContainer.text("未获取到歌词!"); return; } // 将 LRC 歌词解析为数组 const lyrics = lrc.trim().split('\n').filter(line => { // 使用正则检查是否符合 [mm:ss.xx] 或 [mm:ss.xxx] 格式 return /^\[\d{2}:\d{2}(\.\d{2,3})?\]/.test(line) && line !== null; }).map(function (line) { let indexOf = line.lastIndexOf("]"); const time = line.substring(1, indexOf).split(":"); const text = line.substring(indexOf + 1).trim(); const seconds = parseInt(time[0]) * 60 + parseFloat(time[1]); return {time: seconds, text: text}; }); // 实时更新歌词 $(audio).on('timeupdate', function () { const currentTime = audio.currentTime; let currentLyric = null; // 查找当前播放时间对应的歌词 for (let i = 0; i < lyrics.length; i++) { if (currentTime >= lyrics[i].time) { currentLyric = lyrics[i]; } else { break; } } if (currentLyric) { // 更新歌词内容 lyricsContainer.text(currentLyric.text); } }); }, error: function () { lyricsContainer.text("未获取到歌词!"); } }); if (currentSrc === symbol) { $("#audio")[0].play(); } else { $("#audio > source").attr("src", symbol); $("#audio")[0].load(); $("#audio")[0].play(); } $("#audio")[0].volume = $("#apis-quiet-div-music-playVolumeField").val(); $("#apis-quiet-content").find(".contentTD > tr").find('td:nth-child(2)').removeClass("music_highlight"); $(this).parent("td").parent("tr").find('td:nth-child(2)').addClass("music_highlight"); }); /*$(".apis-quiet-div-music-pause").click(function () { var symbol = $(this).attr("symbolName"); $("#apis-quiet-content > audio")[0].pause(); });*/ $(".apis-quiet-div-music-detail,.apis-quiet-div-music-update").click(function () { if ($("#musicpreview").css("display") === 'none') { $("#musicpreview").css("display", "block"); } else if ($("#musicpreview").css("display") === 'block') { $("#musictpreview").css("display", "none"); } $(".musicpreview-top-close").click(function () { if ($("#musicpreview").css("display") === 'none') { $("#musicpreview").css("display", "block"); } else if ($("#musicpreview").css("display") === 'block') { $("#musicpreview").css("display", "none"); } $(this).unbind("click"); $(".musicpreview-top-submit").unbind("click"); }); $(".musicpreview-top-submit").click(function () { $.ajax({ url: "musicInfo/musicUpdate", //请求的url地址 dataType: "json", //返回格式为json data: {"symbol": $(".musicpreview-content").find(".musicpreview-symbol").val(), "remark": $(".musicpreview-content").find("textarea").val()}, //参数值 type: "post", //请求方式 async: false, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { $(".musicpreview-top-close").click(); } else { console.log("musicpreview-top-submit success error," + data); } }, beforeSend: function () { }, complete: function () { }, error: function (data) { //请求出错处理 console.log("musicpreview-top-submit error," + data); } }); }); var operationType = $(this).attr("operationType"); if (operationType === 'detail') { $(".musicpreview-top-submit").css("display", "none"); } else if (operationType === 'update') { $(".musicpreview-top-submit").css("display", "block"); } var symbol = $(this).attr("symbolName"); $.ajax({ url: "musicInfo/musicDetail/" + symbol + "/" + operationType, //请求的url地址 type: "get", //请求方式 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { data = data.data; if (operationType === 'detail') { $(".musicpreview-content").html(data); } else if (operationType === 'update') { var update4Text = ''; update4Text += ''; $(".musicpreview-content").html(update4Text); } } else { //alert(data.message); } }, beforeSend: function () { $(".musicpreview-content").html(""); $(".musicpreview-loading").css("display", "block"); }, complete: function () { $(".musicpreview-loading").css("display", "none"); }, error: function (data) { //请求出错处理 alert('error:' + data); } }); }); } if (nameEn === 'orderHistoryProductType' || nameEn === 'traderList' || nameEn === 'watchlist' || nameEn === 'image' || nameEn === 'cmcmap') { // 鼠标滑过 开启菜单 $(".primary").mouseenter(function () { savIDMouseEnter($(this), nameEn); }); // 鼠标离开 关闭菜单 $(".primary").mouseleave(function () { savIDMouseLeave($(this), nameEn); }); } } function insertOrUpdateImageSubmit(){ var formData = new FormData($("#popup-form")[0]); formData.append("userName", getCookie('username')); $.ajax({ url: "pictureInfo/insertOrUpdateImg", //请求的url地址 dataType: "json", //返回格式为json data: formData, //参数值 type: "post", //请求方式 processData: false,// 告诉jQuery不要去处理发送的数据 contentType: false,// 告诉jQuery不要去设置Content-Type请求头 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //$(".uploadImgs-loading").css("display", "none"); //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { //$("#uploadImgsAlert").html(JSON.stringify(data.data)); var quietSelectOption = $("#apis-quiet-select option:selected"); if ($(quietSelectOption).attr("nameen") === 'image') { $(".apis-quiet-div-button2").click(); } } else { //$("#uploadImgsAlert").html(data.message); } // 在请求成功后填充数据到结果区域 $("#result-content").text(JSON.stringify(data, null, 2)); $("#loading-icon").fadeOut(); $("#result-container").fadeIn(); // 显示结果区域 }, beforeSend: function () { //$(".uploadImgs-loading").css("display", "block"); showLoading(); // 显示加载状态 }, complete: function () { }, error: function (data) { //请求出错处理 console.log("uploadImgs-submit error," + data); } }); } function insertOrUpdateMusicSubmit(){ var formData = new FormData($("#popup-form")[0]); formData.append("userName", getCookie('username')); $.ajax({ url: "musicInfo/insertOrUpdateMusic", //请求的url地址 dataType: "json", //返回格式为json data: formData, //参数值 type: "post", //请求方式 processData: false,// 告诉jQuery不要去处理发送的数据 contentType: false,// 告诉jQuery不要去设置Content-Type请求头 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //$(".uploadMusics-loading").css("display", "none"); //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { //$("#uploadMusicsAlert").html(JSON.stringify(data.data)); var quietSelectOption = $("#apis-quiet-select option:selected"); if ($(quietSelectOption).attr("nameen") === 'music') { $(".apis-quiet-div-button2").click(); } } else { //$("#uploadMusicsAlert").html(data.message); } // 在请求成功后填充数据到结果区域 $("#result-content").text(JSON.stringify(data, null, 2)); $("#loading-icon").fadeOut(); $("#result-container").fadeIn(); // 显示结果区域 }, beforeSend: function () { //$(".uploadMusics-loading").css("display", "block"); showLoading(); // 显示加载状态 }, complete: function () { }, error: function (data) { //请求出错处理 console.log("uploadMusics-submit error," + data); } }); } function insertOrUpdateWatchlistSubmit(){ var formData = new FormData($("#popup-form")[0]); formData.append("userName", getCookie('username')); $.ajax({ url: "coin/insertOrUpdateWatchlist", //请求的url地址 dataType: "json", //返回格式为json data: formData, //参数值 type: "post", //请求方式 processData: false,// 告诉jQuery不要去处理发送的数据 contentType: false,// 告诉jQuery不要去设置Content-Type请求头 async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //$(".popup > .watchlist-loading").css("display", "none"); //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { //$("#insertOrUpdateAlert").html(JSON.stringify(data.data)); var quietSelectOption = $("#apis-quiet-select option:selected"); if ($(quietSelectOption).attr("nameen") === 'watchlist') { $(".apis-quiet-div-button2").click(); } } else { //$("#insertOrUpdateAlert").html(data.message); } // 在请求成功后填充数据到结果区域 $("#result-content").text(JSON.stringify(data, null, 2)); $("#loading-icon").fadeOut(); $("#result-container").fadeIn(); // 显示结果区域 }, beforeSend: function () { //$(".popup > .watchlist-loading").css("display", "block"); showLoading(); // 显示加载状态 }, complete: function () { }, error: function (data) { //请求出错处理 console.log("insertOrUpdateWatchlist-submit error," + data); } }); } function insertOrUpdateCurrentHoldingSubmit(){ var formData = new FormData($("#popup-form")[0]); formData.append("userName", getCookie('username')); const jsonData = {}; formData.forEach((value, key) => { jsonData[key] = value; }); $.ajax({ url: "coin/insertOrUpdateCurrentHolding", //请求的url地址 dataType: "json", //返回格式为json data: JSON.stringify(jsonData), //参数值 type: "post", //请求方式 contentType: "application/json;charset=utf-8", async: true, //请求是否异步,默认为异步,这也是ajax重要特性 success: function (data) { //请求成功时处理 if (data != null && $.trim(data) != "" && data.success) { var quietSelectOption = $("#apis-quiet-select option:selected"); if ($(quietSelectOption).attr("nameen") === 'currentHolding') { $(".apis-quiet-div-button2").click(); } } else { //$("#uploadMusicsAlert").html(data.message); } // 在请求成功后填充数据到结果区域 $("#result-content").text(JSON.stringify(data, null, 2)); $("#loading-icon").fadeOut(); $("#result-container").fadeIn(); // 显示结果区域 }, beforeSend: function () { showLoading(); // 显示加载状态 }, complete: function () { }, error: function (data) { //请求出错处理 console.log("insertOrUpdateCurrentHolding error," + data); } }); } function initOther4Popup(){ // 打开弹窗 $(".apis-quiet-div-button4").on("click", function () { var selectedOption = $("select#apis-quiet-select").find("option:selected"); var url = selectedOption.attr("url"); var typetype = selectedOption.attr("typetype"); var nameEn = selectedOption.attr("nameEn"); var slideDiv = $(this).attr("slideDiv"); quietPop(url, nameEn, slideDiv, typetype); if (nameEn != 'watchlist' && nameEn != 'image' && nameEn != 'music' && nameEn != 'currentHolding') { return; } $(".popup").fadeIn(); centerPopup(); // 调用居中函数 }); // 关闭弹窗 $(".close-btn").on("click", function () { $(".popup").fadeOut(); }); // 阻止表单默认提交行为 $(".popup form").on("submit", function (e) { e.preventDefault(); var nameEn = $("#popup-form-hidden-nameEn").val(); if (nameEn === 'watchlist') { insertOrUpdateWatchlistSubmit(); } else if (nameEn === 'image') { insertOrUpdateImageSubmit(); } else if (nameEn === 'music') { insertOrUpdateMusicSubmit(); } else if (nameEn === 'currentHolding') { insertOrUpdateCurrentHoldingSubmit(); } }); // 实现拖动功能 let isDragging = false; let offsetX, offsetY; $("#draggable-popup h2").on("mousedown", function (e) { // 判断如果点击在 input 或 select 上,不触发拖动 if ($(e.target).closest("input, select, label").length) { return; // 如果按在 input 或 select 上,不启动拖动 } isDragging = true; offsetX = e.clientX - $(this).offset().left; offsetY = e.clientY - $(this).offset().top; $(this).css("cursor", "grabbing"); // 改变鼠标指针样式 }); $(document).on("mousemove", function (e) { if (isDragging) { const left = e.clientX - offsetX; const top = e.clientY - offsetY; $("#draggable-popup").css({ left: `${left}px`, top: `${top}px`, }); } }); $(document).on("mouseup", function () { isDragging = false; $("#draggable-popup").css("cursor", "move"); // 恢复鼠标指针样式 }); // 重置按钮的功能 $("#reset-button").on("click", function () { $("#result-container").fadeOut(); // 隐藏请求结果区域 $(".loading-icon").fadeOut(); // 重置时隐藏加载图标 var nameEn = $("#popup-form-hidden-nameEn").val(); if (nameEn === 'currentHolding') { $("#form-container-2").html(""); } }); } // 显示加载图标 function showLoading() { $("#result-content").text(""); // 清空内容 $("#result-container").hide(); // 使用 hide() 快速隐藏 $("#loading-icon").fadeIn(); // 显示加载图标 } // 计算并设置弹窗居中位置 function centerPopup() { const popup = $("#draggable-popup"); const windowWidth = $(window).width(); const windowHeight = $(window).height(); const popupWidth = popup.outerWidth(); const popupHeight = popup.outerHeight(); // 计算弹窗的位置 const left = (windowWidth - popupWidth) / 2; const top = (windowHeight - popupHeight) / 4; // 设置弹窗的位置 popup.css({ left: `${left}px`, top: `${top}px`, }); } /** * quietPop * @param pageNo */ function quietPop(url, nameEn, slideDiv, typetype) { if (nameEn === 'currentPlan' || nameEn === 'orderMarginCoinCurrent') { } else if (nameEn === 'monitorCurrency') { } else if (nameEn === 'allPositionv2') { } else if (nameEn === 'orderHistoryProductType') { } else if (nameEn === 'traderList') { } else if (nameEn === 'watchlist') { let formContent = ""; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; $("#form-container-2").html(formContent); $("#popup-form-hidden-nameEn").val(nameEn); $("#draggable-popup > h2").text("InsertOrUpdateWatchlist"); } else if (nameEn === 'image') { let formContent = ""; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; $("#form-container-2").html(formContent); var uploadImageCategoryStr = ''; $.each(uploadImgsCategoryField, function (index2, obj2) { uploadImageCategoryStr += ''; }); $("#apis-quiet-div-uploadImgs-categoryField").append(uploadImageCategoryStr); $("#popup-form-hidden-nameEn").val(nameEn); $("#draggable-popup > h2").text("InsertOrUpdateImage"); } else if (nameEn === 'cmcmap') { } else if (nameEn === 'music') { let formContent = ""; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; formContent += '
'; $("#form-container-2").html(formContent); var uploadMusicCategoryStr = ''; $.each(uploadMusicsCategoryField, function (index2, obj2) { uploadMusicCategoryStr += ''; }); $("#apis-quiet-div-uploadMusics-categoryField").append(uploadMusicCategoryStr); // 初始化Select2并设置宽度 setTimeout(function () { $('#apis-quiet-div-uploadMusics-categoryField').select2({ placeholder: "请选择分类", // 占位符 allowClear: false, // 添加清空选择的按钮 width: "100%" // 下拉框宽度 }); }, 100); // 延迟100毫秒初始化 $("#popup-form-hidden-nameEn").val(nameEn); $("#draggable-popup > h2").text("InsertOrUpdateMusic"); } else if (nameEn === 'currentHolding') { let formContent = ""; formContent += '
'; formContent += '
'; $("#form-container-1").html(formContent); $("#form-container-2").html(""); // 操作类型添加事件 $("#popup-form").find("select[name='operationType']").change(function (e) { let operationType = $(this).val(); let formContent2 = ""; if (operationType === 'buy') { formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; $("#form-container-2").html(formContent2); var exchangeCategoryStr = ''; $.each(uploadExchangeCategoryField, function (index2, obj2) { exchangeCategoryStr += ''; }); $("#apis-quiet-div-CurrentHolding-exchangeCategoryField").append(exchangeCategoryStr); } else if (operationType === 'sell') { formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; $("#form-container-2").html(formContent2); } else if (operationType === 'transfer') { formContent2 += '
'; formContent2 += '
'; formContent2 += '
'; $("#form-container-2").html(formContent2); var exchangeCategoryStr = ''; $.each(uploadExchangeCategoryField, function (index2, obj2) { exchangeCategoryStr += ''; }); $("#apis-quiet-div-CurrentHolding-remitterField,#apis-quiet-div-CurrentHolding-payeeField").append(exchangeCategoryStr); } else if (operationType === 'modifyCurrentAmount') { formContent2 += '
'; formContent2 += '
'; $("#form-container-2").html(formContent2); } else { $("#form-container-2").html(""); } }); $("#popup-form-hidden-nameEn").val(nameEn); $("#draggable-popup > h2").text("InsertOrUpdateCurrentHolding"); } else if (nameEn === 'bookmark') { } }