留学生视角:我的电商运营实战经验与心得

puppy

《电商运营工作总结》由留学生网( https://www.lxs.net/ )小编整理发布,希望能够给你提供实用帮助。

电商运营工作总结

Hey小伙伴们!今天我要和大家分享的是关于电商运营的一些心得和总结。无论你是刚接触电商的小白,还是已经在跨境电商领域摸爬滚打的老手,这篇文章都能为你提供一些实用的建议和启发。

一、了解你的市场与顾客

首先,我们得搞清楚自己的定位。是的,就像你选择留学目的地一样,做电商也需要明确目标市场和目标顾客。比如,如果你的产品主要是面向海外市场的学生群体,那么就需要了解他们的需求、兴趣以及购买习惯等信息。这些信息可以通过市场调研、社交媒体分析等方式获得。

二、打造吸引人的产品页面

产品页面就像是你给顾客的第一印象,所以一定要精心设计。想想看,当你浏览电商平台时,是不是那些图片精美、描述详细的商品更能吸引你呢?因此,在创建商品列表时,确保使用高质量的图片,并且用简洁明了的语言来描述产品的特点和优势。此外,别忘了加入一些Social Proof元素,比如用户评价或评分系统,这能大大增加顾客的信任感。

三、利用SEO优化提升可见度

SEO(Search Engine Optimization),也就是搜索引擎优化,对于提高网站在搜索结果中的排名至关重要。这意味着当潜在顾客在Google或其他搜索引擎中搜索相关关键词时,你的店铺能够更容易被找到。要做到这一点,你需要关注关键词研究、元标签设置(比如和<meta>标签)、以及高质量内容创作等方面。</p> <h2>四、开展有效的营销活动</h2> <p>好的营销策略可以帮助你吸引更多顾客并促进销售。例如,你可以利用节假日或者特殊事件举办促销活动;也可以通过邮件营销向订阅者发送最新优惠信息;甚至可以尝试与网红或博主合作进行产品推广。记住,关键是要找到最适合你目标市场的营销渠道和方法。</p> <h2>五、提供卓越的客户服务</h2> <p>无论是线上还是线下交易,良好的客户服务体验都是至关重要的。想象一下,如果你在国外购物遇到问题时能够得到及时而专业的帮助,你会不会更加满意呢?因此,请确保建立一个响应迅速且友好的客服团队,并且鼓励顾客留下反馈以便不断改进服务。</p> <h2>六、数据分析驱动决策</h2> <p>最后但同样重要的一点是:学会运用数据来指导你的业务决策。通过分析网站流量、转化率等关键指标,你可以更好地理解哪些策略有效,哪些需要调整。有许多工具如Google Analytics可以帮助你收集和解读这些数据。</p> <p>总之,电商运营不仅是一门技术活儿,更是一种艺术。希望以上分享能够给你带来灵感和帮助。如果你有任何疑问或想法,欢迎留言讨论哦!</p> </body> <div class="clear"></div> </div> <!-- 辅成AI论文系统 - 推广位 --> <div style=" margin: 30px auto; padding: 20px; background: linear-gradient(135deg, #f8f9ff 0%, #e6f0ff 100%); border-radius: 12px; box-shadow: 0 4px 12px rgba(0, 30, 100, 0.08); border: 1px solid #d0d9f0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; text-align: center; max-width: 720px; width: 90%; transition: transform 0.2s ease; " onmouseover="this.style.transform='scale(1.01)'" onmouseout="this.style.transform='scale(1)'"> <h3 style="margin: 0 0 12px; color: #1a365d; font-size: 1.4em; font-weight: 600;"> 辅成AI一键生成论文系统 </h3> <p style="margin: 0 0 18px; color: #4a5568; font-size: 1em; line-height: 1.5;"> 匿名一键生成|真实参考文献|真实图表公式|免费无限改稿 </p> <a href="https://lw.lxs.net/paper" target="_blank" style=" display: inline-block; padding: 10px 24px; background-color: #3182ce; color: white; text-decoration: none; border-radius: 6px; font-weight: 500; font-size: 1em; transition: background-color 0.2s; " onmouseover="this.style.backgroundColor='#2c5aa0'" onmouseout="this.style.backgroundColor='#3182ce'"> 立即体验 </a> </div> <!-- /推广位 --> <div class="read-tags"> <a class="postTag" href="https://www.lxs.net/hashtag/工作总结" rel="tag">#工作总结</a> </div> <hr class="style-two"> <div class="valign author-block tag_read_blg_auth_blk"> <div class="valign author"> <div class="img-wrap"> <img alt="puppy" src="https://www.lxs.net/upload/photos/f-avatar.jpg?cache=0"> </div> <div class="text"> <h3><a href="https://www.lxs.net/Studyabroad">Studyabroad</a></h3> <p>258698 博客 </p> </div> </div> <div> </div> </div> <div class="related-post"> <div class="row"> <div class="col-lg-4 tag_main_blog_col recommended-articles"> <div class="tag_main_blog"> <a href="https://www.lxs.net/read-blog/228195_留学生年度学习总结精选七篇.html" class="avatar"> <img src="https://www.lxs.net/upload/photos/2024/07/uS3NLCAnu53VpG6eozhZ_20_122c81c41e66bb39c2475924f7786da1_image.jpg" alt="留学生年度学习总结精选七篇"> </a> <a class="postCategory" href="https://www.lxs.net/blog-category/26" data-ajax="?link1=blog-category&id=26">申请文书</a> <div class="info"> <h2 class="art-title"><a href="https://www.lxs.net/read-blog/228195_留学生年度学习总结精选七篇.html">留学生年度学习总结精选七篇</a></h2> <div class="postMeta--author-text truncate"> <time> 2024年 8月 27日</time> </div> </div> </div> </div><div class="col-lg-4 tag_main_blog_col recommended-articles"> <div class="tag_main_blog"> <a href="https://www.lxs.net/read-blog/228194_7-examples-of-unit-borrowing.html" class="avatar"> <img src="https://www.lxs.net/upload/photos/2024/07/uS3NLCAnu53VpG6eozhZ_20_122c81c41e66bb39c2475924f7786da1_image.jpg" alt="7 Examples of Unit Borrowing Contracts for Reference"> </a> <a class="postCategory" href="https://www.lxs.net/blog-category/26" data-ajax="?link1=blog-category&id=26">申请文书</a> <div class="info"> <h2 class="art-title"><a href="https://www.lxs.net/read-blog/228194_7-examples-of-unit-borrowing.html">7 Examples of Unit Borrowing Contracts for Reference</a></h2> <div class="postMeta--author-text truncate"> <time> 2024年 8月 27日</time> </div> </div> </div> </div><div class="col-lg-4 tag_main_blog_col recommended-articles"> <div class="tag_main_blog"> <a href="https://www.lxs.net/read-blog/228193_海外留学生视角-解读-停产计划-的影响与应对.html" class="avatar"> <img src="https://www.lxs.net/upload/photos/2024/07/uS3NLCAnu53VpG6eozhZ_20_122c81c41e66bb39c2475924f7786da1_image.jpg" alt="海外留学生视角:解读‘停产计划’的影响与应对"> </a> <a class="postCategory" href="https://www.lxs.net/blog-category/26" data-ajax="?link1=blog-category&id=26">申请文书</a> <div class="info"> <h2 class="art-title"><a href="https://www.lxs.net/read-blog/228193_海外留学生视角-解读-停产计划-的影响与应对.html">海外留学生视角:解读‘停产计划’的影响与应对</a></h2> <div class="postMeta--author-text truncate"> <time> 2024年 8月 27日</time> </div> </div> </div> </div><div class="col-lg-4 tag_main_blog_col recommended-articles"> <div class="tag_main_blog"> <a href="https://www.lxs.net/read-blog/228192_top-5-popular-resignation-le.html" class="avatar"> <img src="https://www.lxs.net/upload/photos/2024/07/uS3NLCAnu53VpG6eozhZ_20_122c81c41e66bb39c2475924f7786da1_image.jpg" alt="Top 5 Popular Resignation Letters from Companies in 2023"> </a> <a class="postCategory" href="https://www.lxs.net/blog-category/26" data-ajax="?link1=blog-category&id=26">申请文书</a> <div class="info"> <h2 class="art-title"><a href="https://www.lxs.net/read-blog/228192_top-5-popular-resignation-le.html">Top 5 Popular Resignation Letters from Companies in 2023</a></h2> <div class="postMeta--author-text truncate"> <time> 2024年 8月 27日</time> </div> </div> </div> </div><div class="col-lg-4 tag_main_blog_col recommended-articles"> <div class="tag_main_blog"> <a href="https://www.lxs.net/read-blog/228191_留学生自我反省-个人行为偏差的深度剖析.html" class="avatar"> <img src="https://www.lxs.net/upload/photos/2024/07/uS3NLCAnu53VpG6eozhZ_20_122c81c41e66bb39c2475924f7786da1_image.jpg" alt="留学生自我反省:个人行为偏差的深度剖析"> </a> <a class="postCategory" href="https://www.lxs.net/blog-category/26" data-ajax="?link1=blog-category&id=26">申请文书</a> <div class="info"> <h2 class="art-title"><a href="https://www.lxs.net/read-blog/228191_留学生自我反省-个人行为偏差的深度剖析.html">留学生自我反省:个人行为偏差的深度剖析</a></h2> <div class="postMeta--author-text truncate"> <time> 2024年 8月 27日</time> </div> </div> </div> </div><div class="col-lg-4 tag_main_blog_col recommended-articles"> <div class="tag_main_blog"> <a href="https://www.lxs.net/read-blog/228190_留学生版-主持校园心理健康主题班会的必备指南.html" class="avatar"> <img src="https://www.lxs.net/upload/photos/2024/07/uS3NLCAnu53VpG6eozhZ_20_122c81c41e66bb39c2475924f7786da1_image.jpg" alt="留学生版:主持校园心理健康主题班会的必备指南"> </a> <a class="postCategory" href="https://www.lxs.net/blog-category/26" data-ajax="?link1=blog-category&id=26">申请文书</a> <div class="info"> <h2 class="art-title"><a href="https://www.lxs.net/read-blog/228190_留学生版-主持校园心理健康主题班会的必备指南.html">留学生版:主持校园心理健康主题班会的必备指南</a></h2> <div class="postMeta--author-text truncate"> <time> 2024年 8月 27日</time> </div> </div> </div> </div></div> </div> <div class="blog-com-wrapper" id="respond"> <div class="valign wo_page_hdng"> <span><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24"><path fill="currentColor" d="M9,22A1,1 0 0,1 8,21V18H4A2,2 0 0,1 2,16V4C2,2.89 2.9,2 4,2H20A2,2 0 0,1 22,4V16A2,2 0 0,1 20,18H13.9L10.2,21.71C10,21.9 9.75,22 9.5,22V22H9Z"></path></svg></span> 评论 </div> <div class="blog-com-box"> <form class="form"> <div class="valign wo_blogcomm_combo"> <textarea id="blog-comment" name="text" class="form-control" placeholder="写评论并按回车"></textarea> <button id="add-art-comment" class="btn btn-main btn-mat" type="button">评论</button> </div> <div class="clear"></div> </form> <div class="clear"></div> </div> <div class="blog-comlist-container"> </div> <div class="posts_load"> </div> </div> </div> </div> </div> </div> <!-- .row --> </div> <script> jQuery(document).ready(function($) { $(".load-more-blog-comments").click(function(event) { var self = $(this); var last_id = 0; if ($("div[data-blog-comment]").length > 0) { last_id = $("div[data-blog-comment]").last().attr('data-blog-comment'); } $.ajax({ url: Wo_Ajax_Requests_File(), type: 'GET', dataType: 'json', data: { f:'load-blog-comments', offset:last_id, b_id:228196 }, }).done(function(data) { if (data.status == 200) { $(".blog-comlist-container").append(data.html); } else if(data.status == 404){ self.text(data.html); } }).fail(function() { console.log("Something went wrong. Try again later"); }) }); $(document).on('click', ".delete-my-blog",function() { $.ajax({ type: "GET", url: Wo_Ajax_Requests_File(), data: {id: $(this).attr("id"),f:'delete-my-blog'}, dataType:'json', success: function(data) { if(data['status'] == 200){ $("div[data-rm-blog='"+ data['id'] +"']").remove() } else { alert(data['status']) } } }); }); $(document).on('click', ".del-blog-comment",function() { var self = $(this); $.ajax({ type: "GET", url: Wo_Ajax_Requests_File(), data: {id: self.attr("id"),f:'del-blog-comment',b_id:228196}, dataType:'json', success: function(data) { if(data['status'] == 200){ $("div[data-blog-comment='"+ self.attr('id') +"']").slideUp('fast',function(){ $(".blog-com-top h4 span").text(data.comments); $(this).remove(); }) } } }); }); $(document).on('click', ".del-blog-commreplies",function() { var self = $(this); $.ajax({ type: "GET", url: Wo_Ajax_Requests_File(), data: {id: self.attr("id"),f:'del-blog-commreplies',b_id:228196}, dataType:'json', success: function(data) { if(data['status'] == 200){ $("div[data-blog-comment-reply='"+ self.attr('id') +"']").slideUp('fast',function(){ var comments = Number($(".blog-com-top h4 span").text()); $(".blog-com-top h4 span").text(comments -= 1); $(this).remove(); }) } } }); }); $(document).on('click', ".reply-toblogcomm-reply",function() { $('.blog-comment-reply-box').each(function(index, el) { $(el).addClass('hidden'); }); var self = $(this); var name = $("div[data-blog-comment-reply='"+self.attr('id')+"']").find('a b').text(); $("div[data-blog-comment='"+self.attr('data-blog-commId')+"']").find('.blog-comment-reply-box').removeClass('hidden').find('textarea').val(name +": "); }); $(document).on('click', ".reply-toblog-comm",function() { $('.blog-comment-reply-box').each(function(index, el) { $(el).addClass('hidden'); }); var self = $(this); $("div[data-blog-comment='"+self.attr('id')+"']").find('.blog-comment-reply-box').toggleClass('hidden').find('textarea').val(''); }); // var userHasCommented = false; // function autoCommentOnce() { // if ($("").closest('.pointer').length) { // userHasCommented = true; // } // } // autoCommentOnce();--> $("#add-art-comment").click(function(event) { document.location = "https://www.lxs.net"; $.ajax({ url: Wo_Ajax_Requests_File() + '?f=add-blog-comm', type: 'POST', dataType: 'json', data: {text:$("#blog-comment").val(),blog:228196}, }) .done(function(data) { if (data.status == 200) { if (node_socket_flow == "1") { socket.emit("user_notification", { to_id: data.user_id, user_id: _getCookie("user_id"), type: "added" }); } $("#blog-comment").val(''); $(".blog-comlist-container").prepend(data.html); $(".blog-com-top h4 span").text(data.comments); } }) .fail(function() { console.log("Something went wrong. Try again later"); }) }); }); function Wo_OpenWindow(url) { var shareUrl = 'https://www.lxs.net/sharer?url=' + encodeURIComponent(url); var isMobile = window.matchMedia && window.matchMedia('(max-width: 991px)').matches; if (isMobile) { window.location.href = shareUrl; return false; } var newwindow = window.open(shareUrl, '', 'height=600,width=800'); if (!newwindow || newwindow.closed) { window.location.href = shareUrl; return false; } if (window.focus) { newwindow.focus(); } return false; } function Wo_AddBlogCommentLike(id){ if (!id) { return false; } var comment_id = id; Wo_Delay(function(){ $.ajax({ url: Wo_Ajax_Requests_File() + '?f=add-blog-commlikes', type: 'POST', dataType: 'json', data: {id:comment_id,blog_id:228196}, }).done(function(data) { if (data.status == 200) { if (node_socket_flow == "1") { socket.emit("user_notification", { to_id: data.user_id, user_id: _getCookie("user_id"), type: "added" }); } $("span[data-blog-comdislikes='"+comment_id+"']").text(data.dislikes); $("span[data-blog-comlikes='"+comment_id+"']").text(data.likes); } }).fail(function() { console.log("Something went wrong. Try again later"); }) },0); } function Wo_AddBlogCommentDisLike(id){ if (!id) { return false; } var comment_id = id; Wo_Delay(function(){ $.ajax({ url: Wo_Ajax_Requests_File() + '?f=add-blog-commdislikes', type: 'POST', dataType: 'json', data: {id:comment_id,blog_id:228196}, }).done(function(data) { if (data.status == 200) { $("span[data-blog-comdislikes='"+comment_id+"']").text(data.dislikes); $("span[data-blog-comlikes='"+comment_id+"']").text(data.likes); } }).fail(function() { console.log("Something went wrong. Try again later"); }) },0); } function Wo_AddBlogCommReplyLike(id){ if (!id) { return false; } var reply_id = id; Wo_Delay(function(){ $.ajax({ url: Wo_Ajax_Requests_File() + '?f=add-blog-crlikes', type: 'POST', dataType: 'json', data: {id:reply_id,blog_id:228196}, }).done(function(data) { if (data.status == 200) { $("span[data-blog-comrlikes='"+reply_id+"']").text(data.likes); $("span[data-blog-comrdislikes='"+reply_id+"']").text(data.dislikes); } }).fail(function() { console.log("Something went wrong. Try again later"); }) },0); } function Wo_AddBlogCommReplyDisLike(id){ if (!id) { return false; } var reply_id = id; Wo_Delay(function(){ $.ajax({ url: Wo_Ajax_Requests_File() + '?f=add-blog-crdislikes', type: 'POST', dataType: 'json', data: {id:reply_id,blog_id:228196}, }).done(function(data) { if (data.status == 200) { $("span[data-blog-comrlikes='"+reply_id+"']").text(data.likes); $("span[data-blog-comrdislikes='"+reply_id+"']").text(data.dislikes); } }).fail(function() { console.log("Something went wrong. Try again later"); }) },0); } function Wo_RegisterBlogCommReply(id,event,self){ document.location = "https://www.lxs.net"; if (event.keyCode==13&&event.shiftKey==0&&event&&id&&self) { var text = self.value; if (text.length >= 2) { $.ajax({ url: Wo_Ajax_Requests_File() + '?f=add-blog-commreply', type: 'POST', dataType: 'json', data: {c_id:id,text:text,b_id:228196}, }).done(function(data) { if (data.status == 200) { if (node_socket_flow == "1") { socket.emit("user_notification", { to_id: data.user_id, user_id: _getCookie("user_id"), type: "added" }); } $("div[data-blog-comment='"+id+"']").find('.blog-comment-reply-cont').append(data.html); $(".blog-com-top h4 span").text(data.comments); self.value = ''; } }).fail(function() { console.log("Something went wrong. Try again later"); }) } } } </script></div> <div class="ad-placement-header-footer"> </div> </div> <div class="modal fade image-modal" id="modal_light_box" role="dialog"> <div class="valign tag_lbox_toolbar"><div class="btn btn-mat close-lightbox" data-dismiss="modal" aria-label="Close"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="currentColor" d="M7.828 11H20v2H7.828l5.364 5.364-1.414 1.414L4 12l7.778-7.778 1.414 1.414z"></path></svg></div></div> <div class="modal-dialog"> <div class="modal-content"> <img class="image"> </div> </div> </div> <div class="modal fade" id="views-info-modal" role="dialog"> <div class="modal-dialog wow_mat_mdl modal-md"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title"><span id="views_info_title"></span></h4> </div> <div class="modal-body"> <div id="views_info" class="wo_react_ursrs_list"></div> <div class="clearfix"></div> <div id="views_info_load" style="display: none;"> <div class="load-more views_info_load_ wo_react_ursrs_list_lod_mor"> <button class="btn btn-default text-center views_info_load_more" data-type="" post-id="" table-type="" onclick="Wo_LoadViewsInfo(this);"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"></path></svg></span> <span class="no_load_more_btn_span" id="load_more_info_btn">加载更多</span> </button> </div> </div> </div> </div> </div> </div> <div class="modal fade" id="users-reacted-modal" role="dialog"> <div class="modal-dialog wow_mat_mdl modal-md"> <div class="modal-content"> <div class="valign mb-15 who_react_modal"> <span class="tag_check_who_how_react how_reacted like-btn-like pointer" id="_post333" onclick="Wo_LoadReactedUsers(1);$('.tag_check_who_how_react').removeClass('active');$(this).addClass('active');"> <div class="inline_post_emoji no_anim"><div class="reaction"><img src="https://www.lxs.net/upload/files/2022/09/EAufYfaIkYQEsYzwvZha_01_4bafb7db09656e1ecb54d195b26be5c3_file.svg" alt="puppy"/></div></div> </span> <span class="tag_check_who_how_react how_reacted like-btn-like pointer" id="_post333" onclick="Wo_LoadReactedUsers(2);$('.tag_check_who_how_react').removeClass('active');$(this).addClass('active');"> <div class="inline_post_emoji no_anim"><div class="reaction"><img src="https://www.lxs.net/upload/files/2022/09/2MRRkhb7rDhUNuClfOfc_01_76c3c700064cfaef049d0bb983655cd4_file.svg" alt="puppy"/></div></div> </span> <span class="tag_check_who_how_react how_reacted like-btn-like pointer" id="_post333" onclick="Wo_LoadReactedUsers(3);$('.tag_check_who_how_react').removeClass('active');$(this).addClass('active');"> <div class="inline_post_emoji no_anim"><div class="reaction"><img src="https://www.lxs.net/upload/files/2022/09/D91CP5YFfv74GVAbYtT7_01_288940ae12acf0198d590acbf11efae0_file.svg" alt="puppy"/></div></div> </span> <span class="tag_check_who_how_react how_reacted like-btn-like pointer" id="_post333" onclick="Wo_LoadReactedUsers(4);$('.tag_check_who_how_react').removeClass('active');$(this).addClass('active');"> <div class="inline_post_emoji no_anim"><div class="reaction"><img src="https://www.lxs.net/upload/files/2022/09/cFNOXZB1XeWRSdXXEdlx_01_7d9c4adcbe750bfc8e864c69cbed3daf_file.svg" alt="puppy"/></div></div> </span> <span class="tag_check_who_how_react how_reacted like-btn-like pointer" id="_post333" onclick="Wo_LoadReactedUsers(5);$('.tag_check_who_how_react').removeClass('active');$(this).addClass('active');"> <div class="inline_post_emoji no_anim"><div class="reaction"><img src="https://www.lxs.net/upload/files/2022/09/yKmDaNA7DpA7RkCRdoM6_01_eb391ca40102606b78fef1eb70ce3c0f_file.svg" alt="puppy"/></div></div> </span> <span class="tag_check_who_how_react how_reacted like-btn-like pointer" id="_post333" onclick="Wo_LoadReactedUsers(6);$('.tag_check_who_how_react').removeClass('active');$(this).addClass('active');"> <div class="inline_post_emoji no_anim"><div class="reaction"><img src="https://www.lxs.net/upload/files/2022/09/iZcVfFlay3gkABhEhtVC_01_771d67d0b8ae8720f7775be3a0cfb51a_file.svg" alt="puppy"/></div></div> </span> </div> <div class="modal-body"> <div id="reacted_users_box" class="wo_react_ursrs_list"></div> <div class="clearfix"></div> <div id="reacted_users_load" style="display: none;"> <div class="load-more wo_react_ursrs_list_lod_mor"> <button class="btn btn-default text-center reacted_users_load_more" data-type="" post-id="" col-type="" onclick="Wo_LoadMoreReactedUsers(this);"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"></path></svg></span> <span class="no_load_more_btn_span" id="load_more_reacted_btn">加载更多</span> </button> </div> </div> </div> </div> </div> </div> <div class="modal fade" id="error_post" role="dialog"> <div class="modal-dialog wow_mat_mdl"> <div class="modal-content"> <p class="text-center" id="error_post_text"></p> </div> </div> </div> <div class="modal fade" id="edit-offer-modal" role="dialog"> <div class="modal-dialog wow_mat_mdl"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">编辑报价</h4> </div> <form class="edit-offer-form form-horizontal" method="post"> <div class="modal-body tag_field_full_margin"> <div class="app-offer-alert app-general-alert"></div> <div class="clear"></div> <div class="edit_offer_modal_form"></div> </div> <div class="modal-footer"> <button type="button" class="btn btn-default btn-mat disable_btn" data-dismiss="modal" aria-label="Close">取消</button> <button type="submit" class="btn btn-main btn-mat disable_btn">更新</button> </div> </form> </div> </div> </div> <div class="modal fade" id="add_tier_modal" role="dialog" data-keyboard="false" style="overflow-y: auto;"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-x"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></span></button> <h4 class="modal-title">添加层</h4> </div> <form class="form form-horizontal tier_form" method="post" action="#"> <div class="modal-body twocheckout_modal"> <div class="modal_add_tier_modal_alert"></div> <div class="clear"></div> <div class="sun_input col-md-6"> <input name="title" type="text" class="form-control input-md" autocomplete="off" placeholder="层级标题"> <label class="plr15">层级标题</label> </div> <div class="sun_input col-md-6"> <input name="price" type="number" class="form-control input-md" autocomplete="off" placeholder="等级价格"> <label class="plr15">等级价格</label> </div> <div class=" col-lg-12"> <label class="plr15">好处</label> <br> <input type="checkbox" name="benefits[]" value="chat" onclick="ShowBenefitsChat(this)"> <label>聊天</label><br> <div class="add_benefits_chat" style="display: none;"> <input type="radio" id="benefits_chat_1" name="chat" value="chat_without_audio_video"> <label for="benefits_chat_1">无需音频和视频通话即可聊天</label><br> <input type="radio" id="benefits_chat_2" name="chat" value="chat_with_audio_without_video"> <label for="benefits_chat_2">带音频通话和不带视频通话的聊天</label><br> <input type="radio" id="benefits_chat_3" name="chat" value="chat_without_audio_with_video"> <label for="benefits_chat_3">无音频通话和视频通话的聊天</label><br> <input type="radio" id="benefits_chat_4" name="chat" value="chat_with_audio_video"> <label for="benefits_chat_4">通过音频和视频通话聊天</label><br> </div> <input type="checkbox" name="benefits[]" value="live_stream"> <label>现场直播</label><br> </div> <div class="sun_input col-md-12"> <textarea class="form-control input-md" placeholder="层级说明" name="description"></textarea> <label class="plr15">层级说明</label> </div> <div class="clear"></div> <div class="form-group col-lg-12"> <label class="col-md-12">层级图像:</label> <div class="col-md-12"> <div class="select_ev_covr" id="select_tier_image"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M5,3A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H14.09C14.03,20.67 14,20.34 14,20C14,19.32 14.12,18.64 14.35,18H5L8.5,13.5L11,16.5L14.5,12L16.73,14.97C17.7,14.34 18.84,14 20,14C20.34,14 20.67,14.03 21,14.09V5C21,3.89 20.1,3 19,3H5M19,16V19H16V21H19V24H21V21H24V19H21V16H19Z" /></svg> 选择一张图片 </div> </div> </div> </div> <input type="file" name="image" class="hidden" id="tier_image"> <div class="clear"></div> <div class="modal-footer"> <div class="ball-pulse"><div></div><div></div><div></div></div> <button type="submit" class="btn btn-main btn-mat">添加</button> </div> </form> </div> </div> </div> <div class="modal fade" id="delete-tier" tabindex="-1" role="dialog" aria-labelledby="delete-tier" aria-hidden="true" data-id="0"> <div class="modal-dialog mat_box" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title"> 删除您的等级</h5> </div> <div class="modal-body"> 确定要删除此层吗? </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">取消</button> <button type="button" class="btn btn-danger btn-mat" data-dismiss="modal">删除</button> </div> </div> </div> </div> <div class="modal fade" id="show_product_reviews_modal" role="dialog"> <div class="modal-dialog wow_mat_mdl"> <div class="modal-content check_reviews"> <div class="modal-header"> <h4 class="modal-title">评论</h4> <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-x"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></span></button> </div> <div class="modal-body"> <div id="show_product_reviews_modal_info" class="wo_react_ursrs_list"></div> <div class="clearfix"></div> <div id="show_product_reviews_modal_info_load" style="display: none;"> <div class="load-more"> <button class="btn btn-default text-center pointer" data-type="" post-id="" table-type="" onclick="Wo_LoadReviews();"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"></path></svg></span> <p class="m-0 d-inline" id="show_product_reviews_load_text">加载更多</p></button> </div> </div> </div> </div> </div> </div> <div class="modal fade" id="monetization_modal" role="dialog"> <div class="modal-dialog wow_mat_mdl"> <div class="modal-content"> <div class="wo_error_messages empty_state"> <svg enable-background="new 0 0 64 64" height="512" viewBox="0 0 64 64" width="512" xmlns="http://www.w3.org/2000/svg"><g id="Icons"><g><g><path d="m32 58c-14.359 0-26-11.641-26-26 0-14.359 11.641-26 26-26 14.359 0 26 11.641 26 26 0 14.359-11.641 26-26 26z" fill="#fa6450"/></g><g><path d="m10 32c0-13.686 10.576-24.894 24-25.916-.661-.05-1.326-.084-2-.084-14.359 0-26 11.641-26 26 0 14.359 11.641 26 26 26 .674 0 1.339-.034 2-.084-13.424-1.022-24-12.23-24-25.916z" fill="#dc4632"/></g><g><path d="m32 38c-2.209 0-4-1.791-4-4v-16c0-2.209 1.791-4 4-4 2.209 0 4 1.791 4 4v16c0 2.209-1.791 4-4 4z" fill="#f0f0f0"/></g><g><path d="m32 50c-2.209 0-4-1.791-4-4 0-2.209 1.791-4 4-4 2.209 0 4 1.791 4 4 0 2.209-1.791 4-4 4z" fill="#f0f0f0"/></g></g></g></svg> 为了销售您的内容和帖子,请首先创建一些包。 <a href="https://www.lxs.net/setting&user=&page=monetization">货币化</a> </div> </div> </div> </div> <script type="text/javascript">const node_socket_flow = "0"</script> <script type="text/javascript" src="https://www.lxs.net/themes/Sean/javascript/script.min.js?v=1785548592"></script> <div class="extra-css"></div> <script type="text/javascript">jQuery(document).ready(function() {jQuery('.custom-fixed-element').theiaStickySidebar({additionalMarginTop: 65});});</script> <script type="text/javascript"> (function (factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. define(['jquery'], factory); } else { // Browser globals factory(jQuery); } }(function ($) { $.timeago = function(timestamp) { if (timestamp instanceof Date) { return inWords(timestamp); } else if (typeof timestamp === "string") { return inWords($.timeago.parse(timestamp)); } else if (typeof timestamp === "number") { return inWords(new Date(timestamp)); } else { return inWords($.timeago.datetime(timestamp)); } }; var $t = $.timeago; $.extend($.timeago, { settings: { refreshMillis: 60000, allowPast: true, allowFuture: false, localeTitle: false, cutoff: 0, strings: { prefixAgo: null, prefixFromNow: null, suffixAgo: "前", suffixFromNow: "现在起", inPast: "现在任何时候", seconds: "现在", minute: "分钟", minutes: "分钟", hour: "小时", hours: "小时", day: "天", days: "日", week: "星期", weeks: "周", month: "月", months: "月", year: "年", years: "年", wordSeparator: " ", numbers: [] } }, inWords: function(distanceMillis,type = '') { if(!this.settings.allowPast && ! this.settings.allowFuture) { throw 'timeago allowPast and allowFuture settings can not both be set to false.'; } var $l = this.settings.strings; var prefix = $l.prefixAgo; var suffix = $l.suffixAgo; if (this.settings.allowFuture) { if (distanceMillis < 0) { prefix = $l.prefixFromNow; suffix = $l.suffixFromNow; } } if(!this.settings.allowPast && distanceMillis >= 0) { return this.settings.strings.inPast; } var seconds = Math.abs(distanceMillis) / 1000; var minutes = seconds / 60; var hours = minutes / 60; var days = hours / 24; var weeks = days / 7; var years = days / 365; function substitute(stringOrFunction, number) { var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction; var value = ($l.numbers && $l.numbers[number]) || number; return number+' '+string.replace(/%d/i, value); //return string.replace(/%d/i, value); } // var words = seconds < 45 && substitute($l.seconds, '') || // seconds < 90 && substitute('m', 1) || // minutes < 45 && substitute('m', Math.round(minutes)) || // minutes < 90 && substitute('h', 1) || // hours < 24 && substitute('hrs', Math.round(hours)) || // hours < 42 && substitute('d', 1) || // days < 7 && substitute('d', Math.round(days)) || // weeks < 2 && substitute('w', 1) || // weeks < 52 && substitute('w', Math.round(weeks)) || // years < 1.5 && substitute('y', 1) || // substitute('yrs', Math.round(years)); var words = ''; if (type != 'notification') { if (seconds < 45) { words = substitute($l.seconds, ''); } else if (seconds < 90) { words = substitute('分钟', 1); } else if (minutes < 45) { words = substitute('分钟', Math.round(minutes)); } else if (minutes < 90) { words = substitute('小时', 1); } else if (hours < 24) { words = substitute('小时', Math.round(hours)); } else if (hours < 42) { words = substitute('天', 1); } else if (days < 7) { words = substitute('天', Math.round(days)); } else if (weeks < 2) { words = substitute('周', 1); } else if (weeks < 52) { words = substitute('周', Math.round(weeks)); } else if (years < 1.5) { words = substitute('年', 1); } else { words = substitute('年', Math.round(years)); } } else{ if (seconds < 45) { words = substitute($l.seconds, ''); } else if (seconds < 90) { words = substitute($l.minute + ' 前', 1); } else if (minutes < 45) { words = substitute($l.minutes + ' 前', Math.round(minutes)); } else if (minutes < 90) { words = substitute($l.hour + ' 前', 1); } else if (hours < 24) { words = substitute($l.hours + ' 前', Math.round(hours)); } else if (hours < 42) { words = substitute($l.day + ' 前', 1); } else if (days < 7) { words = substitute($l.days + ' 前', Math.round(days)); } else if (weeks < 2) { words = substitute($l.week + ' 前', 1); } else if (weeks < 52) { words = substitute($l.weeks + ' 前', Math.round(weeks)); } else if (years < 1.5) { words = substitute($l.year + ' 前', 1); } else { words = substitute($l.years + ' 前', Math.round(years)); } } var separator = $l.wordSeparator || ""; if ($l.wordSeparator === undefined) { separator = " "; } return $.trim([prefix, words].join(separator)); }, parse: function(iso8601) { var s = $.trim(iso8601); s = s.replace(/\.\d+/,""); // remove milliseconds s = s.replace(/-/,"/").replace(/-/,"/"); s = s.replace(/T/," ").replace(/Z/," UTC"); s = s.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // -04:00 -> -0400 s = s.replace(/([\+\-]\d\d)$/," $100"); // +09 -> +0900 return new Date(s); }, datetime: function(elem) { var iso8601 = $t.isTime(elem) ? $(elem).attr("datetime") : $(elem).attr("title"); return $t.parse(iso8601); }, isTime: function(elem) { // jQuery's `is()` doesn't play well with HTML5 in IE return $(elem).get(0).tagName.toLowerCase() === "time"; // $(elem).is("time"); } }); // functions that can be called via $(el).timeago('action') // init is default when no action is given // functions are called with context of a single element var functions = { init: function(){ var refresh_el = $.proxy(refresh, this); refresh_el(); var $s = $t.settings; if ($s.refreshMillis > 0) { this._timeagoInterval = setInterval(refresh_el, $s.refreshMillis); } }, update: function(time){ var parsedTime = $t.parse(time); $(this).data('timeago', { datetime: parsedTime }); if($t.settings.localeTitle) $(this).attr("title", parsedTime.toLocaleString()); refresh.apply(this); }, updateFromDOM: function(){ $(this).data('timeago', { datetime: $t.parse( $t.isTime(this) ? $(this).attr("datetime") : $(this).attr("title") ) }); refresh.apply(this); }, dispose: function () { if (this._timeagoInterval) { window.clearInterval(this._timeagoInterval); this._timeagoInterval = null; } } }; $.fn.timeago = function(action, options) { var fn = action ? functions[action] : functions.init; if(!fn){ throw new Error("Unknown function name '"+ action +"' for timeago"); } // each over objects here and call the requested function this.each(function(){ fn.call(this, options); }); return this; }; function refresh() { var data = prepareData(this); var $s = $t.settings; if (!isNaN(data.datetime)) { if ( $s.cutoff == 0 || Math.abs(distance(data.datetime)) < $s.cutoff) { let tType = ''; if ($(this).hasClass('notification-time')) { tType = 'notification'; } $(this).text(inWords(data.datetime,tType)); } } return this; } function prepareData(element) { element = $(element); if (!element.data("timeago")) { element.data("timeago", { datetime: $t.datetime(element) }); var text = $.trim(element.text()); if ($t.settings.localeTitle) { element.attr("title", element.data('timeago').datetime.toLocaleString()); } else if (text.length > 0 && !($t.isTime(element) && element.attr("title"))) { element.attr("title", text); } } return element.data("timeago"); } function inWords(date,type) { return $t.inWords(distance(date),type); } function distance(date) { return (new Date().getTime() - date.getTime()); } // fix for IE6 suckage document.createElement("abbr"); document.createElement("time"); })); $(function () { setInterval(function () { if ( $('.ajax-time').length > 0) { $('.ajax-time').timeago() .removeClass('.ajax-time'); } }, 1000); }); </script> <script> function _getSession(cname) { return ''; } function ReadMoreText(selector) { let text = "阅读更多"; if (typeof selector == 'object') { selector = $(selector).attr('class'); } for (var i = 0; i < $(selector).length; i++) { var t = $(selector)[i]; if (!$(t).hasClass('ReadMoreAdded') && $(t).text().trim().length > 0 && $(t).height() > 190) { var c = new Date().getUTCMilliseconds() + (Math.floor(Math.random() * 9999)) + 100 + "_" + i; $(t).addClass(c); $(t).addClass('ReadMoreAdded'); $(t).css({ maxHeight: "150px" }) $(t).after('<a href="javascript:void(0)" class="main" onclick="ShowReadMoreText(\'.'+c+'\',this)">'+text+'</a>'); } } } function ShowReadMoreText(selector,self) { let text = ""; $(selector).css({ maxHeight: "" }) $(self).replaceWith('<a href="javascript:void(0)" class="main" onclick="HideReadMoreText(\''+selector+'\',this)">'+text+'</a>') } function HideReadMoreText(selector,self) { let text = ""; $(selector).css({ maxHeight: "150px" }) $(self).replaceWith('<a href="javascript:void(0)" class="main" onclick="ShowReadMoreText(\''+selector+'\',this)">'+text+'</a>') } let f = navigator.userAgent.search("Firefox"); if (f > -1) { $('.header-brand').attr('href', "https://www.lxs.net/?cache=1789941218"); } function GifScrolledC(self) { if ((($(self).prop("scrollHeight") - $(self).height()) - $(self).scrollTop()) < 300) { id = $(self).attr('GId'); type = $(self).attr('GType'); word = $(self).attr('GWord'); offset = $(self).attr('GOffset'); SearchForGif(word,id,type,offset); } } function SearchForGif(keyword,id = 0,type = '',offset = 0) { if ($('#publisher-box-stickers-cont-'+id).attr('GWord') != keyword) { $('#publisher-box-stickers-cont-'+id).empty(); $('#publisher-box-stickers-cont-'+id).attr('GOffset', 0); $('#publisher-box-stickers-cont-'+id).attr('GWord', keyword); } else{ $('#publisher-box-stickers-cont-'+id).attr('GOffset', parseInt($('#publisher-box-stickers-cont-'+id).attr('GOffset')) + 20); } Wo_Delay(function(){ $.ajax({ url: 'https://api.giphy.com/v1/gifs/search?', type: 'GET', dataType: 'json', data: {q:keyword,api_key:'420d477a542b4287b2bf91ac134ae041', limit: 20,offset: offset}, }) .done(function(data) { if (data.meta.status == 200 && data.data.length > 0) { $('#publisher-box-stickers-cont-'+id).empty(); var appended = false; for (var i = 0; i < data.data.length; i++) { appended = true; if (appended == true) { appended = false; if (type == 'story') { $('#publisher-box-stickers-cont-'+id).append($('<img alt="gif" src="'+data.data[i].images.fixed_height_small.url+'" data-gif="' + data.data[i].images.fixed_height.url + '" onclick="Wo_PostCommentGif_'+id+'(this,'+id+')" autoplay loop>')); } else{ $('#publisher-box-stickers-cont-'+id).append($('<img alt="gif" src="'+data.data[i].images.fixed_height_small.url+'" data-gif="' + data.data[i].images.fixed_height.url + '" onclick="Wo_PostReplyCommentGif_'+id+'(this,'+id+')" autoplay loop>')); } appended = true; } } var images = 0; Wo_ElementLoad($('img[alt=gif]'), function(){ images++; }); if (data.data.length == images || images >= 5) { } } else { $('#publisher-box-stickers-cont-'+id).html('<div class="empty_state"><svg height="512pt" viewBox="0 0 512 512" width="512pt" xmlns="http://www.w3.org/2000/svg"><path d="m416 512h-320c-53.023438 0-96-42.976562-96-96v-320c0-53.023438 42.976562-96 96-96h320c53.023438 0 96 42.976562 96 96v320c0 53.023438-42.976562 96-96 96zm0 0" fill="#f5e6fe"/><path d="m229.425781 303.902344c0-39.359375 30.652344-71.644532 69.328125-74.398438v-69.601562c0-17.644532-14.355468-32-32-32h-106.675781c-17.644531 0-32 14.355468-32 32v149.328125c0 17.648437 14.355469 32 32 32h79.441406c-6.382812-10.992188-10.09375-23.710938-10.09375-37.328125zm-50.769531-46.078125c-7.039062-7.039063-19.425781-7.039063-26.464844 0l-2.765625 2.769531v-100.691406c0-5.886719 4.78125-10.671875 10.671875-10.671875h106.671875c5.886719 0 10.671875 4.785156 10.671875 10.671875v68.691406l-8.113281-8.113281c-7.296875-7.296875-19.167969-7.296875-26.464844 0l-50.765625 50.765625zm0 0" fill="#be63f9"/><path d="m381.328125 365.34375-28.625-28.625c6.351563-9.375 10.050781-20.65625 10.050781-32.796875 0-32.335937-26.320312-58.675781-58.675781-58.675781-32.351563 0-58.671875 26.320312-58.671875 58.675781 0 32.351563 26.320312 58.671875 58.671875 58.671875 12.515625 0 24.097656-3.96875 33.632813-10.671875l28.511718 28.511719c2.082032 2.078125 4.816406 3.117187 7.539063 3.117187 2.71875 0 5.453125-1.039062 7.535156-3.117187 4.191406-4.175782 4.191406-10.929688.03125-15.089844zm-77.230469-24.097656c-20.578125 0-37.328125-16.75-37.328125-37.324219 0-20.578125 16.75-37.328125 37.328125-37.328125 20.574219 0 37.328125 16.75 37.328125 37.328125 0 20.574219-16.753906 37.324219-37.328125 37.324219zm0 0" fill="#d9a4fc"/><path d="m202.753906 202.574219c0 11.78125-9.550781 21.328125-21.328125 21.328125-11.78125 0-21.328125-9.546875-21.328125-21.328125 0-11.777344 9.546875-21.328125 21.328125-21.328125 11.777344 0 21.328125 9.550781 21.328125 21.328125zm0 0" fill="#be63f9"/></svg>暂无结果</div>'); } }) .fail(function() { console.log("error"); }) },100); } $(document).ready(function(){ $('body').on('contextmenu', 'video', function() { return false; }); }); $(window).on("popstate", function (e) { // AdSense vignette/fullscreen ads use History API on the same page. // Reloading on every popstate closes them ~1s after they open. // Only reload after our smooth AJAX navigation has pushed history. if (!window.__lxsUsedAjaxNav) { return; } location.reload(); }); jQuery(document).click(function(event){ if (!(jQuery(event.target).closest(".remove_combo_on_click").length)) { jQuery('.remove_combo_on_click').removeClass('comment-toggle'); } }); </script> <script> window.addEventListener("load", function(){ window.cookieconsent.initialise({ "theme": "classic", "content": { "message": "本网站使用 cookie 来确保您在我们的网站上获得最佳体验。", "dismiss": "知道了!", "link": "了解更多", "href": "https://www.lxs.net/terms/privacy-policy" } }) }); </script> <div class="modal fade" id="apply-job-modal" role="dialog"></div> <div id="pay_modal_wallet"> <div class="modal fade" id="pay-go-pro" role="dialog" data-keyboard="false"> <div class="modal-dialog modal-md wow_mat_mdl"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">钱包支付</h4> </div> <div class="modal-body"> <div class="pay_modal_wallet_alert"></div> <p class="pay_modal_wallet_text"></p> </div> <div class="clear"></div> <div class="modal-footer"> <button type="button" class="btn btn-default btn-mat disable_btn" data-dismiss="modal" aria-label="Close">取消</button> <button type="button" class="btn btn-main btn-mat" id="pay_modal_wallet_btn">现在付款</button> </div> </div> </div> </div> </div> <div class="tag_side_backdrop" onclick="javascript:$('body').toggleClass('side_open');"></div> <!-- HTML NOTIFICATION POPUP --> <div id="notification-popup" class="wow_content tag_pop_noti"></div> <!-- HTML NOTIFICATION POPUP --> <div class="modal fade" id="buy_product_modal" tabindex="-1" role="dialog" aria-labelledby="buy_product" aria-hidden="true" data-id="0"> <div class="modal-dialog modal-md mat_box wow_mat_mdl" role="document"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">付款提醒</h4> </div> <div class="modal-body"> <div class="modal_product_pay_alert"></div> <p>您即将购买商品,是否要继续?</p> </div> <div class="modal-footer"> <input type="hidden" id="product_id"> <input type="hidden" id="product_price"> <button type="button" class="btn btn-default btn-mat disable_btn" data-dismiss="modal" aria-label="Close">取消</button> <button type="button" class="btn btn-main btn-mat">现在付款</button> </div> </div> </div> </div> <div class="modal fade lxs-refund-modal" id="refund_order" tabindex="-1" role="dialog" aria-labelledby="refund_order" aria-hidden="true" data-id="0"> <div class="modal-dialog mat_box wow_mat_mdl" role="document"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">申请退款 / 发起争议</h4> </div> <form class="refund_order_form" method="post"> <div class="modal-body"> <p class="lxs-refund-lead">提交后订单将进入「争议中」,资金继续托管,学长无法推进履约;平台审核后决定退款或恢复服务。</p> <div class="modal_refund_order_modal_alert"></div> <label class="tag_field"> <textarea placeholder=" " rows="5" name="message" id="refund_order_message"></textarea> <span class="form-label">请说明争议原因</span> </label> </div> <div class="modal-footer"> <button type="button" class="btn btn-default btn-mat disable_btn" data-dismiss="modal" aria-label="Close">取消</button> <button type="submit" class="btn btn-main btn-mat get_refnd">提交争议</button> </div> </form> </div> </div> </div> <a href="https://www.lxs.net/checkout" data-ajax="?link1=checkout" id="load_checkout" style="display: none;"></a> <div id="lxs-publish-sheet" class="lxs-sheet" aria-hidden="true" hidden> <button type="button" class="lxs-sheet__backdrop" id="lxs-publish-backdrop" aria-label="关闭"></button> <div class="lxs-sheet__panel" role="dialog" aria-modal="true" aria-labelledby="lxs-publish-title"> <div class="lxs-sheet__handle" aria-hidden="true"></div> <h3 id="lxs-publish-title">发布</h3> <p class="lxs-sheet__desc">发动态、写博客,或上架一条可买的服务。</p> <div class="lxs-sheet__list"> <a class="lxs-sheet__item lxs-sheet__item--social" href="https://www.lxs.net/welcome"> <span class="lxs-sheet__ico lxs-sheet__ico--social" aria-hidden="true"><svg viewBox="0 0 24 24" width="22" height="22" fill="none" stroke="currentColor" stroke-width="1.85"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg></span> <span><strong>登录后发布</strong><small>发动态、写博客或上架服务</small></span> </a> </div> <button type="button" class="lxs-sheet__cancel" id="lxs-publish-cancel">取消</button> </div> </div> <script> (function(){ var openBtn = document.getElementById('lxs-publish-open'); var sheet = document.getElementById('lxs-publish-sheet'); if (!openBtn || !sheet) return; var backdrop = document.getElementById('lxs-publish-backdrop'); var cancelBtn = document.getElementById('lxs-publish-cancel'); var statusBtn = document.getElementById('lxs-publish-status'); function closeSheet(){ sheet.classList.remove('is-open'); sheet.setAttribute('aria-hidden','true'); sheet.setAttribute('hidden',''); document.body.classList.remove('lxs-sheet-open'); } function openSheet(){ sheet.removeAttribute('hidden'); sheet.classList.add('is-open'); sheet.setAttribute('aria-hidden','false'); document.body.classList.add('lxs-sheet-open'); } openBtn.addEventListener('click', function(e){ e.preventDefault(); openSheet(); }); if (backdrop) backdrop.addEventListener('click', closeSheet); if (cancelBtn) cancelBtn.addEventListener('click', closeSheet); sheet.querySelectorAll('a.lxs-sheet__item').forEach(function(a){ a.addEventListener('click', function(){ closeSheet(); }); }); function openPublisherModal(){ var box = document.getElementById('tagPostBox'); if (!box) return false; try { document.body.classList.add('lxs-pub-open'); if (typeof jQuery !== 'undefined') { jQuery('#tagPostBox').modal({backdrop:'static', keyboard:false, show:true}); setTimeout(function(){ var ta = document.querySelector('#tagPostBox textarea.postText'); if (ta) ta.focus(); }, 280); } else { box.classList.add('show'); box.style.display = 'block'; } return true; } catch (err) { return false; } } window.lxsOpenPublisher = openPublisherModal; if (statusBtn) { statusBtn.addEventListener('click', function(){ closeSheet(); if (openPublisherModal()) return; try { sessionStorage.setItem('lxs_focus_publisher','1'); } catch (err) {} var home = statusBtn.getAttribute('data-home') || '/home'; if (typeof jQuery !== 'undefined') { var $a = jQuery('<a>', { href: home, 'data-ajax': '?link1=home' }).appendTo(document.body); $a[0].click(); setTimeout(function(){ $a.remove(); }, 0); setTimeout(function(){ openPublisherModal(); }, 500); setTimeout(function(){ openPublisherModal(); }, 1200); return; } window.location.href = home; }); } /* 键盘弹起时把工具条钉在可视区底部,避免表情/#/@被挡住 */ (function(){ var pinned = false; function footer(){ return document.querySelector('#tagPostBox.show .publisher-box-footer, #tagPostBox.in .publisher-box-footer'); } function pin(){ var el = footer(); if (!el || !window.visualViewport) return; var vv = window.visualViewport; var offset = Math.max(0, window.innerHeight - vv.height - vv.offsetTop); el.style.transform = offset > 0 ? ('translateY(-' + offset + 'px)') : ''; pinned = offset > 0; } function clearPin(){ var el = document.querySelector('#tagPostBox .publisher-box-footer'); if (el) el.style.transform = ''; pinned = false; } if (window.visualViewport) { window.visualViewport.addEventListener('resize', pin); window.visualViewport.addEventListener('scroll', pin); } document.addEventListener('shown.bs.modal', function(e){ if (e.target && e.target.id === 'tagPostBox') { document.body.classList.add('lxs-pub-open'); pin(); } }, true); document.addEventListener('hidden.bs.modal', function(e){ if (e.target && e.target.id === 'tagPostBox') { document.body.classList.remove('lxs-pub-open'); clearPin(); } }, true); if (typeof jQuery !== 'undefined') { jQuery(document).on('shown.bs.modal', '#tagPostBox', function(){ document.body.classList.add('lxs-pub-open'); pin(); }); jQuery(document).on('hidden.bs.modal', '#tagPostBox', function(){ document.body.classList.remove('lxs-pub-open'); clearPin(); }); } })(); document.addEventListener('keydown', function(e){ if (e.key === 'Escape' && sheet.classList.contains('is-open')) closeSheet(); }); })(); </script> <div id="lxs-toast" class="lxs-toast" role="status" aria-live="polite"></div> <div id="lxs-confirm" class="lxs-confirm-backdrop" aria-hidden="true" hidden style="display:none"> <div class="lxs-confirm" role="dialog" aria-modal="true" aria-labelledby="lxs-confirm-title"> <h3 id="lxs-confirm-title">请确认</h3> <p id="lxs-confirm-body"></p> <div class="lxs-confirm__actions"> <button type="button" class="btn btn-default btn-mat" id="lxs-confirm-cancel">取消</button> <button type="button" class="btn btn-main btn-mat" id="lxs-confirm-ok">确认</button> </div> </div> </div> <script> (function(){ var toastEl = document.getElementById('lxs-toast'); var toastTimer; window.lxsToast = function(msg){ if (!toastEl) return; toastEl.textContent = msg || ''; toastEl.classList.add('show'); clearTimeout(toastTimer); toastTimer = setTimeout(function(){ toastEl.classList.remove('show'); }, 2000); }; var box = document.getElementById('lxs-confirm'); var titleEl = document.getElementById('lxs-confirm-title'); var bodyEl = document.getElementById('lxs-confirm-body'); var okBtn = document.getElementById('lxs-confirm-ok'); var cancelBtn = document.getElementById('lxs-confirm-cancel'); var onOk = null, onCancel = null; function closeConfirm(){ if (!box) return; box.classList.remove('is-open'); box.setAttribute('aria-hidden','true'); box.setAttribute('hidden',''); box.style.display = 'none'; document.body.style.overflow = ''; } window.lxsConfirm = function(title, body, ok, cancel){ if (!box) { if (window.confirm((title||'')+'\n'+(body||''))) { ok && ok(); } else { cancel && cancel(); } return; } titleEl.textContent = title || '请确认'; bodyEl.textContent = body || ''; onOk = ok; onCancel = cancel; box.removeAttribute('hidden'); box.style.display = 'flex'; box.classList.add('is-open'); box.setAttribute('aria-hidden','false'); document.body.style.overflow = 'hidden'; }; if (okBtn) okBtn.addEventListener('click', function(){ var fn=onOk; closeConfirm(); fn && fn(); }); if (cancelBtn) cancelBtn.addEventListener('click', function(){ var fn=onCancel; closeConfirm(); fn && fn(); }); if (box) box.addEventListener('click', function(e){ if (e.target === box) { var fn=onCancel; closeConfirm(); fn && fn(); } }); document.addEventListener('click', function(e){ if (e.target === document.body || (e.target && e.target.classList && e.target.classList.contains('side_open') === false && document.body.classList.contains('side_open') && e.target === document.documentElement)) { /* noop */ } }); /* 点遮罩关侧栏 */ document.addEventListener('click', function(e){ if (!document.body.classList.contains('side_open')) return; if (e.target === document.body) { document.body.classList.remove('side_open'); } }); })(); </script> </body> </html>