“SearchResultstest”的版本間的差異
來自Youbianku
第1行: | 第1行: | ||
? | <html> | ? | <html> |
? | <style> | + | ? <style> |
? | div.pc_right td { | + | ? ? div.pc_right td { |
? | + | ? ? ? padding: 10px 10px; | |
? | } | + | ? ? } |
? | .pc_right li { | + | ? ? .pc_right li { |
? | + | ? ? ? color: #555; | |
? | + | ? ? ? font-size: 15px; | |
? | + | ? ? ? line-height: 18px; | |
? | + | ? ? ? margin-top: 8px; | |
? | + | ? ? ? word-wrap: break-word; | |
? | } | + | ? ? } |
? | .paging { | + | ? ? .paging { |
? | + | ? ? ? float: right; | |
? | } | + | ? ? } |
? | .paging li { | + | ? ? .paging li { |
? | + | ? ? ? display: inline-block; | |
? | + | ? ? ? padding-left: 20px; | |
? | } | + | ? ? } |
? | .paging li a { | + | ? ? .paging li a { |
? | + | ? ? ? cursor: pointer; | |
? | } | + | ? ? } |
? | .noresult { | + | ? ? .noresult { |
? | + | ? ? ? font-weight: bold; | |
? | + | ? ? ? text-align: center; | |
? | } | + | ? ? } |
? | .noresult p { | + | ? ? .noresult p { |
? | + | ? ? ? margin-top: 6px; | |
? | } | + | ? ? } |
? | a.disabled { | + | ? ? a.disabled { |
? | + | ? ? ? pointer-events: none; | |
? | + | ? ? ? opacity: 0.5; | |
? | + | ? ? ? cursor: not-allowed; | |
? | + | ? ? } | |
? | + | ? </style> | |
? | } | + | ? <div class="pc_right"> |
? | </style> | + | ? ? <div class="noresult unified-content"></div> |
? | <div class="pc_right"> | ? | |
? | ? | ||
? | ?? </div> | ? | ?? </div> |
? | + | ? <script type="text/javascript"> | |
? | <script | + | ? ? function getQueryVariable(variable) { |
? | + | ? ? ? var query = window.location.search.substring(1); | |
? | function getQueryVariable(variable) { | + | ? ? ? var pos = query.indexOf('loc'); |
? | + | ? ? ? var str = query[pos - 1]; | |
? | + | ? ? ? var vars = query.split(str); | |
? | + | ? ? ? for (var i = 0; i < vars.length; i++) { | |
? | + | ? ? ? ? var pair = vars[i].split("="); | |
? | + | ? ? ? ? if (pair[0] == variable) { return pair[1]; } | |
? | + | ? ? ? } | |
? | + | ? ? ? return ''; | |
? | + | ? ? } | |
? | + | ? | |
? | } | + | ? ? var pageSize = 12; |
? | + | ? ? var currentPage = 0; | |
? | + | ? ? var pages = 1; | |
? | + | ? ? var allData = []; | |
? | + | ? | |
? | + | ? ? // 優(yōu)化分頁渲染 | |
? | + | ? ? function paging(currentPage, arr) { | |
? | + | ? ? ? var html = ''; | |
? | + | ? ? ? var skipNum = currentPage * pageSize; | |
? | + | ? ? ? var results = (skipNum + pageSize >= arr.length)? arr.slice(skipNum, arr.length): arr.slice(skipNum, skipNum + pageSize); | |
? | + | ? ? ? var len = results.length; | |
? | + | ? ? ? html += '<tr><th>地址</th><th>郵編</th></tr>'; | |
? | + | ? ? ? for (var i = 0; i < len; i++) { | |
? | + | ? ? ? ? html += `<tr><td>${results[i].address}</td><td><a href="/${results[i].postcode}">${results[i].postcode}</a></td></tr>`; | |
? | + | ? ? ? } | |
? | + | ? ? ? $(".zipcode-datas").html(html); | |
? | + | ? ? } | |
? | + | ? | |
? | + | ? ? // 優(yōu)化上一頁 | |
? | + | ? ? function previous() { | |
? | + | ? ? ? currentPage -= 1; | |
? | + | ? ? ? paging(currentPage, allData); | |
? | + | ? ? ? $(".paging li a:first").toggleClass("disabled", currentPage === 0); | |
? | + | ? ? ? $(".paging li a:last").removeClass("disabled"); | |
? | + | ? ? } | |
? | + | ? | |
? | + | ? ? // 優(yōu)化下一頁 | |
? | + | ? ? function next() { | |
? | + | ? ? ? currentPage += 1; | |
? | + | ? ? ? paging(currentPage, allData); | |
? | + | ? ? ? $(".paging li a:last").toggleClass("disabled", currentPage === pages - 1); | |
? | + | ? ? ? $(".paging li a:first").removeClass("disabled"); | |
? | + | ? ? } | |
? | ? | ||
? | + | ? ? function focusOnResults() { | |
? | + | ? ? ? document.querySelector('.pc_right').scrollIntoView({ behavior: 'smooth' }); | |
? | + | ? ? } | |
? | ? | ||
? | ? | ||
? | function | + | ? ? // 統(tǒng)一顯示無結(jié)果信息 |
? | + | ? ? function displayNoResultMessage(message) { | |
? | + | ? ? ? var msg = message || '抱歉,未查詢到結(jié)果!請嘗試使用更標準的地址進行查詢。'; | |
? | + | ? ? ? $(".noresult").html(`<img src="/skins/Green/resources/images/noresult.svg" alt="無結(jié)果" width="180px" height="auto"><p>${msg}</p>`); | |
? | + | ? ? ? focusOnResults(); | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? ? } | ? | ?? ? } |
? | + | ? | |
? | + | ? ? // 一次性加載所有結(jié)果 | |
? | + | ? ? function updateResults(obj) { | |
? | + | ? ? ? var contentHtml = ''; | |
? | + | ? ? ? if (obj.num === 1) { | |
? | + | ? ? ? ? contentHtml += ` | |
? | + | ? ? ? ? ? <ul class="serach-head unified-content"> | |
? | + | ? ? ? ? ? ? <div class="tabel_response"> | |
? | + | ? ? ? ? ? ? ? <table class="zipcode-datas"><tbody> | |
? | + | ? ? ? ? ? ? ? ? <tr><th>地址</th><td>${obj.results[0].address}</td></tr> | |
? | + | ? ? ? ? ? ? ? ? <tr><th>郵編</th><td><a href="/${obj.results[0].postcode}">${obj.results[0].postcode}</a></td></tr> | |
? | + | ? ? ? ? ? ? ? </tbody></table> | |
? | + | ? ? ? ? ? ? </div> | |
? | + | ? ? ? ? ? </ul> | |
? | + | ? ? ? ? `; | |
? | + | ? ? ? ? var more = ` | |
? | + | ? ? ? ? ? <div class="content-msg unified-content"> | |
? | + | ? ? ? ? ? ? <h2 class="view-title common-color">${decodeURI(address)}更多查詢推薦</h2> | |
? | + | ? ? ? ? ? ? <p class="top-space"><a href="/如何快速查詢某個地址所屬街道辦事處??Subject=${decodeURI(address)}">??立即查詢${decodeURI(address)}所屬街道辦事處</a></p> | |
? | + | ? ? ? ? ? ? <p class="top-space"><a href="/如何快速查詢某個地址所屬派出所?Subject=${decodeURI(address)}">??立即查詢${decodeURI(address)}附近的派出所</p> | |
? | + | ? ? ? ? ? </div> | |
? | + | ? ? ? ? `; | |
? | + | ? ? ? ? contentHtml += more; | |
? | + | ? ? ? } else if (obj.num > 1) { | |
? | + | ? ? ? ? pages = Math.ceil(obj.results.length / pageSize); | |
? | + | ? ? ? ? contentHtml += ` | |
? | + | ? ? ? ? ? <div class="unified-content"> | |
? | + | ? ? ? ? ? ? <ul style="margin-bottom:20px;"> | |
? | + | ? ? ? ? ? ? ? <li><b>搜索詞:</b><span itemprop="name">${decodeURI(address)}</span></li> | |
? | + | ? ? ? ? ? ? </ul> | |
? | + | ? ? ? ? ? ? <div class="view-content-scroll"> | |
? | + | ? ? ? ? ? ? ? <table class="zipcode-datas top-space bottom-space"></table> | |
? | + | ? ? ? ? ? ? </div> | |
? | + | ? ? ? ? ? ? <ul class="paging"> | |
? | + | ? ? ? ? ? ? ? <li><a href="javascript:void(0);" onclick="previous();">上一頁</a></li> | |
? | + | ? ? ? ? ? ? ? <li><a href="javascript:void(0);" onclick="next();">下一頁</a></li> | |
? | + | ? ? ? ? ? ? </ul> | |
? | + | ? ? ? ? ? </div> | |
? | + | ? ? ? ? `; | |
? | + | ? ? ? ? paging(0, obj.results); | |
? | + | ? ? ? ? allData = obj.results; | |
? | + | ? ? ? } | |
? | + | ? ? ? contentHtml += ` | |
? | + | ? ? ? ? <div class="unified-content"> | |
? | + | ? ? ? ? ? <h2 class="view-title common-color">? 提出查詢要求</h2> | |
? | + | ? ? ? ? ? <div class="content-msg"> | |
? | + | ? ? ? ? ? ? <p class="top-space"><a target="_blank" rel="noreferrer noopener" href="/Special:Form/%E6%9F%A5%E8%AF%A2%E8%A6%81%E6%B1%82?Subject=${decodeURI(address)}">提出查詢“${decodeURI(address)}”的要求</a></p> | |
? | + | ? ? ? ? ? ? <p class="top-space">點擊以上鏈接,可提出自己的查詢要求,管理員和網(wǎng)友會及時進行<a href="/%E7%95%99%E8%A8%80%E5%9B%9E%E5%A4%8D" title="留言回復(fù)">留言回復(fù)</a>。</p> | |
? | + | ? ? ? ? ? </div> | |
? | + | ? ? ? ? </div> | |
? | + | ? ? ? `; | |
? | + | ? ? ? $(".pc_right").html(contentHtml); | |
? | + | ? ? ? focusOnResults(); | |
? | ?? ? } | ? | ?? ? } |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | function | + | // 異步加載廣告 |
? | ?? | + | function loadAd() { |
? | + | ?? var mobile_ad = ` | |
? | + | ? ? <div class="unified-content ad-mobile"> | |
? | + | ? ? ? <div class="_c5d19wrylrj"></div> | |
? | + | ? ? </div> | |
? | ?? | + | ?? `; |
? | ? | ||
? | ? | ||
? | + | ?? $(".pc_right").append(mobile_ad); | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? $(". | ? | |
? | ? | ||
? | ? | ||
? | + | ? // 動態(tài)加載廣告腳本 | |
? | ?? document. | + | ?? var script = document.createElement('script'); |
? | + | ? script.type = 'text/javascript'; | |
? | + | ? script.src = '//cpro.baidustatic.com/cpro/ui/cm.js'; | |
? | + | ? script.async = true; | |
? | + | ? document.body.appendChild(script); | |
? | } | ? | } |
? | ? | ||
? | + | ?? ? function add() { | |
? | + | ? ? ? var loc = getQueryVariable('loc'); | |
? | ?? ? | + | ? ? ? var address = getQueryVariable('address'); |
? | + | ? ? ? var city = getQueryVariable('city'); | |
? | + | ? ? ? if (loc || address || city) { | |
? | + | ? ? ? ? var d = new Date(); | |
? | + | ? ? ? ? var str = `${d.getFullYear()}-${d.getMonth() + 1}-${d.getDate()}`; | |
? | + | ? ? ? ? var key = window.btoa(str + 'youbiankuyoubianku'); | |
? | function add( | + | ? ? ? ? $.ajax({ |
? | + | ? ? ? ? ? url: "http://www.foodsell.com.cn/api/youbianku_zhannei_search.php", | |
? | + | ? ? ? ? ? type: "POST", | |
? | + | ? ? ? ? ? data: { address: decodeURI(address), loc: decodeURI(loc), city: decodeURI(city), key: key }, | |
? | + | ? ? ? ? ? success: (obj) => { | |
? | + | ? ? ? ? ? ? var obj = JSON.parse(obj); | |
? | + | ? ? ? ? ? ? if (obj.msg) { | |
? | + | ? ? ? ? ? ? ? displayNoResultMessage(obj.msg); | |
? | + | ? ? ? ? ? ? ? return; | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? ? ? ? ? ? } | ? | ?? ? ? ? ? ? } |
? | + | ?? ? ? ? ? ? if (obj.results.length === 0) { | |
? | + | ? ? ? ? ? ? ? displayNoResultMessage(); | |
? | + | ?? ? ? ? ? ? ? return; | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? ? ? ? ? ? | ? | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? ? ? ? ? ? ? | ? | |
? | ?? ? ? ? ? ? } | ? | ?? ? ? ? ? ? } |
? | + | ? ? ? ? ? ? updateResults(obj); | |
? | + | ? ? ? ? ? }, | |
? | + | ? ? ? ? ? error: () => { | |
? | + | ? ? ? ? ? ? displayNoResultMessage(); | |
? | + | ? ? ? ? ? }, | |
? | + | ? ? ? ? ? complete: () => { | |
? | + | ? ? ? ? ? ? loadAd(); | |
? | ?? ? ? ? ? } | ? | ?? ? ? ? ? } |
? | + | ? ? ? ? }); | |
? | + | ?? ? ? } else { | |
? | + | ?? ? ? ? displayNoResultMessage('抱歉,沒有查詢條件!'); | |
? | + | ?? ? ? } | |
? | + | ?? ? } | |
? | + | ? | |
? | + | ?? ? window.onload = add; | |
? | + | ?? </script> | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? ? ? } | ? | |
? | ? | ||
? | ?? ? ? ? | ? | |
? | ? | ||
? | ? | ||
? | ?? ? ? | ? | |
? | ?? ? } | ? | |
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ? | ||
? | ?? ? | ? | |
? | ? | ||
? | ?? | ? | |
? | ? | ||
? | </script> | ? | |
? | </html> | ? | </html> |
? | ? |
2025年2月17日 (一) 15:41的版本