JavaScript SEO的基础:如何提高网站在Google中的可见性

JavaScript SEO的基础:如何提高网站在Google中的可见性

您是否怀疑JavaScript的问题会阻止Google搜索引擎中的内容显示?了解如何使用我们的指南消除与JavaScript相关的问题以消除问题。

JavaScript是Web平台的重要组成部分,因为它提供了许多将Web变成功能强大的应用程序平台的功能。为了使您的Web应用程序使用Google搜索引擎中可用的JavaScript提供,可以帮助您吸引新用户并在寻找Web应用程序提供的内容时返回现有用户。

尽管Google搜索使用当前版本的Chromium启动JavaScript,但可以优化一些东西。

该领导力描述了Google搜索过程如何提高您网站在Google中的JavaScript应用程序可见性的最佳实践。

Google如何在您的Google网站上处理JavaScript

Google在三个主要阶段处理您的网站的JavaScript应用程序:

  • 爬行(爬行)
  • 渲染(渲染)
  • 索引(索引)

Googlebot将页面放在kraling和渲染的队列中。有时,当页面在等待kraling和渲染时,这并不明显。当GoogleBot从乌鸦线中提取URL时,他首先检查是否允许扫描。 GoogleBot读取robots.txt文件。

如果该页面被阻止用于Kraling,则GoogleBot会错过其请求,而Google不会在网站的阻塞页面上渲染JavaScript。

JavaScript优化以在Google中搜索您的网站

有时,JavaScript应用程序的页面使用该应用程序应建模,而初始内容不包含内容,而Google必须执行JavaScript才能查看生成JavaScript的实际内容。

GoogleBot将所有页面都放在渲染行中,如果仅机器人Methag或标题没有表明该页面不应索引。该页面可能会排成几秒钟,但这可能需要更多的时间。在Google Resources允许后,该页面借助无头铬和JavaScript的帮助。

如何在Google中为您的网站设置独特的头条和元描述

和元描述的独特和描述性元素可帮助用户快速为搜索目标选择最佳结果。您可以使用JavaScript设置或更改元描述,以及<bitle>的元素。</p><H3>使该代码与Google兼容您的网站</H3><p>浏览器提供许多API,JavaScript是一种快速发展的语言。 Google对其支持的API和JavaScript功能受到限制。要确保您的代码与Google兼容,请遵循我们的建议,以消除JavaScript的问题。</p><H2>如何为您的Google网站使用HTTP状态代码</H2><p>GoogleBot使用HTTP状态代码来确定在浏览网站页面时出了什么问题。</p><p>要通知Googlebot无法扫描或索引该页面,请使用可理解的状态代码,例如未找到页面的404或401页,以获取密码保护的页面。</p><H3>如何避免在单页应用程序(SPA)中避免使用软404错误</H3><p>在带有客户端渲染的一个页面应用程序中,通常使用客户端路由实现路由。在这种情况下,使用正确的HTTP状态代码可能是不可能的或不合适的。为了避免使用客户渲染和咆哮时软404错误,请使用以下策略:</p><ul><li>使用JavaScript重定向到URL,服务器与代码404相遇(例如, /未发现)。</li><li>在页面上使用JavaScript添加<meta name =“ robots” content =“ noindex”>。</li></ul><H2>在您的Google网站上使用历史记录API</H2><p>Google只能在带有HREF属性的元素中找到您的链接。</p><p>对于具有客户端渲染的一页应用程序,请使用历史记录API在Web应用程序的不同想法之间实现路由。确保GoogleBot可以在不使用URL片段下载不同内容的情况下处理和提取您的URL。</p><H2>您网站在Google中的网站的正确实施</H2><p>尽管不建议使用JavaScript引入标签rel =“ Canonical”,但这是可能的。 Google搜索在渲染页面时会找到输入的规范URL。</p><H2>如何正确使用机器人元素为您的Google网站</H2><p>您可以防止通过机器人Methag的机器人索引或遵循链接。例如,将下一个元素添加到页面的开头,您可以阻止Google中页面的索引:</p><p><meta name =“ robots” conte =“ noindex,nofollow”></p><p>使用JavaScript将MECHAG添加到页面上或更改其内容是可能的,但重要的是要记住,如果页面代码中已经存在NOINDEX标签,则可能不会渲染或索引页面。</p><H2>为您的Google网站使用长期缓存</H2><p>Googlebot正在积极缓存页面,以减少网络请求和资源使用。为了避免过时的JavaScript或CSS资源问题,请使用指纹策略来创建基于独特的内容。</p><H2>如何在您的Google网站上使用结构化数据</H2><p>在网站页面上使用结构化数据时,您可以使用JavaScript生成JSON-LD并在页面上实现它。确保您已经测试了您的实现,以避免可能的问题。</p><H2>如何遵循Google网站上的Web组件的最佳实践</H2><p>Google支持Web组件。当渲染Google页面时,“倾斜” Shadow Dom和Light Dom的内容。这意味着Google只能看到精益中可见的内容。为确保Google可以查看您的内容,请使用Rich Results测试工具或URL检查工具并查看精益。</p><H2>在Google中为您的网站加载图像和懒惰内容加载</H2><p>图像可以极大地加载吞吐量并影响性能。一个好的策略是仅在用户去看它们时使用懒负荷来加载图像。确保您的懒惰加载实现与Google的建议相对应。</p><H2>如何设计您的网站以在Google中访问</H2><p>为用户创建页面,而不仅仅是为搜索引擎创建页面。当您开发网站时,请考虑用户的需求,包括那些可能不使用支持JavaScript的浏览器的人(例如,使用程序从屏幕上阅读或功能不强的移动设备的人)。</p><p>测试网站可用性的简单方法之一是在浏览器中使用断开的JavaScript查看它,或使用文本浏览器(例如Lynx)。在文本模式下查看网站还有助于识别其他可能难以Google的内容,例如,图像中内置的文本。</p><p>对于与网站SEO相关的任何问题,您可以联系SEO伴侣 <strong>首席执行官</strong> 由e -mail <a href="mailto:info@seo.computer">info@seo.computer</a> 或通过whatsapp按数字 +79202044461。</p><p>ID:125</p> </div> </div> </div> </section> <section id="consultation" class="py-5"> <div class="container"> <div class="form-bg-gradient bor-r-20 my-3 p-4 p-md-5"> <div class="head-title-white text-center">发送请求,我们将提供咨询 在 谢奥 推广您的网站</div> <form class="form row my-3 justify-content-center gy-2 needs-validation" id="form-consultation" action="https://seo.computer/form" method="post" novalidate=""> <input type="hidden" name="form_name" value="Отправьте заявку и мы бесплатно Блог"> <input type="hidden" name="_token" value="9leCWeOu87Q3hJImbvMNPMoaG7qwGCW8YGd0wnn7" autocomplete="off"> <div class="col-12 col-xl-3"> <input type="text" name="name" class="form-control form-padding rounded-5" placeholder="你的名字" required=""> </div> <div class="col-12 col-xl-3"> <input type="tel" name="phone" class="form-control form-padding rounded-5" placeholder="电话号码" required="" maxlength="18"> </div> <div class="col-12 col-xl-3"> <button type="submit" class="btn btn-send btn-light form-padding rounded-5 w-100">发送</button> </div> <div class="col-12 col-md-12"> <div class="text-center"> <a class="text-decoration-none text-white fs-14" href="https://seo.computer/policy">提交申请即表示您同意隐私政策</a> </div> </div> </form> </div> </div> </section> <footer class="footer-bg"> <style> .bottom-contact-bar { display:none; } @media(max-width:992px) { .bottom-contact-bar { display:block; position:fixed; bottom:0; left:0; right:0; z-index: 9999; } .footer-bg { padding-bottom: 16px; } .b24-widget-button-position-bottom-right, .social { margin-bottom: 24px; } } </style> <div class="navbar navbar-dark bg-dark py-1 bottom-contact-bar"> <div class="container justify-content-center"> <div class="nav-link h6 mb-0 p-0 text-white" style="text-align:center"> <a style="text-decoration:none; color:inherit" href="mailto:info@seo.computer">info@seo.computer</a> </div> </div> </div> <style>.norender{display:none;visibility:hidden;}</style> <div class="container"> <div class="row row-cols-4 col-md-12 text-light pt-3 pt-md-5 g-3"> <div class="col-12 col-xl-3 col-md-6 vcard" itemscope itemtype="http://schema.org/LocalBusiness"> <a class="url" href="https://seo.computer/cn"> <img src="https://seo.computer/assets/svg/seo_logo.svg" alt="SEO Computer JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" title="SEO Computer JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" class="rounded-5" width="200" height="40" /> </a> <ul class="nav flex-column"> <li class="fn org" itemprop="name">谢奥 科姆皮尤泰尔</li> <li class="category">网络营销</li> <li>开放时间: <span class="workhours" itemprop="openingHours" datetime="Mo-Su">全天候</span></li> <li class="norender"> <span itemprop="priceRange" class="pricerange">从 1447 CNY</span> <img loading="lazy" aria-hidden="true" width="2048" height="2048" itemprop="image" style="width:unset;height:unset;" class="absolute-bg-from-top__image photo" src="https://seo.computer/uploads/seo-article-1x1/seo-article-10125.webp"> </li> <li class="nav-item mb-2 color-bfbfbf adr"> <span itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"><span class="locality" itemprop="addressLocality">莫斯科</span></span> </li> <li class="nav-item mb-2 email"><a href="mailto:info@seo.computer" style="text-decoration:none;" class="color-bfbfbf" title="Email"><span itemprop="email">info@seo.computer</span></a></li> </ul> </div> <div class="col-12 col-xl-3 col-md-6"> <div class="fw-500 fs-20 mb-2">菜单</div> <ul class="nav flex-column"> <li class="nav-item mb-2"><a href="#tarifs" class="nav-link p-0 color-bfbfbf" title="SEO 关税">SEO 关税</a></li> <li class="nav-item mb-2"><a href="#reviews" class="nav-link p-0 color-bfbfbf" title="SEO 评论">SEO 评论</a></li> <li class="nav-item mb-2"><a href="#quiz" class="nav-link p-0 color-bfbfbf" title="SEO 计算器">SEO 计算器</a></li> <li class="nav-item mb-2"><a href="#sales" class="nav-link p-0 color-bfbfbf" title="SEO 促销活动">SEO 促销活动</a></li> <li class="nav-item mb-2"><a href="https://seo.computer/cn/contact" class="nav-link p-0 color-bfbfbf" title="联系方式">SEO 联系方式</a></li> </ul> </div> <div class="col-12 col-xl-3 col-md-6"> <div class="fw-500 fs-20 mb-2">服务</div> <ul class="nav flex-column"> <li class="nav-item mb-2"><a href="https://seo.computer/cn/business" class="nav-link p-0 color-bfbfbf" title="企业">SEO 对于企业</a></li> <li class="nav-item mb-2"><a href="https://seo.computer/cn/type-sites" class="nav-link p-0 color-bfbfbf" title="网站类型">SEO 对于网站类型</a></li> <li class="nav-item mb-2"><a href="https://seo.computer/cn/cms" class="nav-link p-0 color-bfbfbf" title="内容管理系统">SEO 为了 齐伊梅斯 系统</a></li> <li class="nav-item mb-2"><a href="https://seo.computer/cn/languages" class="nav-link p-0 color-bfbfbf" title="语言">SEO 对于语言</a></li> <li class="nav-item mb-2"><a href="https://seo.computer/cn/engines" class="nav-link p-0 color-bfbfbf" title="搜索引擎">SEO 用于搜索引擎</a></li> </ul> </div> <div class="col-12 col-xl-3 col-md-6"> <div class="fw-500 fs-20 mb-2">社交网络</div> <ul class="nav flex-column"> <li class="nav-item mb-2"><a href="https://wa.me/79202044461" class="nav-link p-0 color-bfbfbf" title="沃察普"><i class="fab fa-whatsapp me-1"></i>沃察普</a></li> <li class="nav-item mb-2"><a href="https://t.me/t9202044461/" class="nav-link p-0 color-bfbfbf" title="捷列格拉姆"><i class="fab fa-telegram-plane me-1"></i>捷列格拉姆</a></li> <li class="nav-item mb-2"><a href="mailto:info@seo.computer" class="nav-link p-0 color-bfbfbf" title="埃梅尔"><i class="fas fa-envelope me-1"></i>埃梅尔</a></li> </ul> </div> </div> <div class="justify-content-between pt-2 pb-4 mt-2 border-top col-md-12 text-light"> <p>本网站仅供参考,并非公开报价。要获得有关所提供服务及其费用的准确信息,请联系公司经理。</p> <a class="text-decoration-none color-bfbfbf" href="https://seo.computer/cn/policy">隐私政策</a> <div class="mt-2"> <!--LiveInternet counter--><a href="https://www.liveinternet.ru/click" target="_blank"><img id="licntD152" width="31" height="31" style="border:0" title="LiveInternet" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAIBTAA7" alt="LiveInternet"/></a><script defer async>setTimeout(function(){(function(d,s){d.getElementById("licntD152").src="https://counter.yadro.ru/hit?t44.6;r"+escape(d.referrer)+((typeof(s)=="undefined")?"":";s"+s.width+"*"+s.height+"*"+(s.colorDepth?s.colorDepth:s.pixelDepth))+";u"+escape(d.URL)+";h"+escape(d.title.substring(0,150))+";"+Math.random()})(document,screen)},4000);</script><!--/LiveInternet--> </div> </div> </div> </footer> <div class="modal fade" id="exampleModalToggle" aria-hidden="true" aria-labelledby="exampleModalToggleLabel" tabindex="-1"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title fw-500 fs-20" id="exampleModalToggleLabel">留下请求</div> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <img loading="lazy" src="https://seo.computer/assets/svg/mobile_marketing.svg" class="my-3 mx-auto" width="300" height="260" alt="留下请求 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" title="留下请求 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科"> <form class="form needs-validation" action="https://seo.computer/form" id="form-popup" method="post" novalidate> <input type="hidden" name="form_name" value="Цены - форма (гл. стр.)"> <input type="hidden" name="_token" value="9leCWeOu87Q3hJImbvMNPMoaG7qwGCW8YGd0wnn7" autocomplete="off"> <div class="modal-body"> <label class="fs-5 text-center fw-bold">留下请求和我们的 谢奥 专家将尽快与您联系</label> <div class="row"> <div class="col-12"> <input type="text" name="name" class="form-control form-padding my-2" placeholder="你的名字" required> </div> <div class="col-12"> <input type="tel" name="phone" class="form-control form-padding my-2" placeholder="电话号码" required> </div> </div> </div> <div class="modal-footer justify-content-center"> <button class="btn rounded-5 btn-primary w-100 form-padding" type="submit">发送</button> <a href="policy.html" class="text-decoration-none text-dark text-center fs-14">提交数据即表示您同意隐私政策</a> </div> </form> </div> </div> </div> <div class="modal fade" id="ModalLanguage" tabindex="-1" aria-labelledby="ModalLanguage" aria-hidden="true"> <div class="modal-dialog modal-sm modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title fs-22 fw-500" id="exampleModalLabel">选择语言</div> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <form class="modal-body" id="languageForm" method="post"> <input type="hidden" name="_token" value="9leCWeOu87Q3hJImbvMNPMoaG7qwGCW8YGd0wnn7" autocomplete="off"> <select class="form-select mb-2" aria-label="选择语言" name="language" id="language"> <option selected>选择语言</option> <option value="cn" selected >简体中文) (cn)</option> <option value="nl" >荷兰语 (nl)</option> <option value="en" >英语 (en)</option> <option value="fr" >法语 (fr)</option> <option value="de" >德语 (de)</option> <option value="id" >印度尼西亚 (id)</option> <option value="it" >意大利语 (it)</option> <option value="jp" >日本人 (jp)</option> <option value="pl" >抛光 (pl)</option> <option value="pt" >葡萄牙语 (pt)</option> <option value="ru" >俄语 (ru)</option> <option value="es" >西班牙语 (es)</option> <option value="tr" >土耳其 (tr)</option> </select> <button type="submit" class="btn btn-primary w-100">改变</button> </form> </div> </div> </div> <div class="modal fade" id="SuccessModal" tabindex="-1" aria-labelledby="SuccessModal" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title fs-22 fw-500" id="SuccessModalLabel"></div> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body text-center"> <img src="https://seo.computer/assets/svg/mail_send.svg" alt="发送成功 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" title="发送成功 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" width="160" height="144" class="mb-5"> <div class="h4" style="color: #000;">发送成功!</div> <p style="color: #000;">谢谢您,您的申请已成功发送!我们会尽快与您联系。</p> </div> </div> </div> </div> <div class="modal fade" id="myModal" tabindex="-1" aria-labelledby="modalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content custom-modal"> <div class="modal-body d-flex align-items-center justify-content-between"> <!-- Rasm joyi --> <div class="modal__contents"> <div class="modal_top"> <span class="section_title">留下请求</span> <p class="text-muted mt-1">我们的SEO专家将在不久的将来与您联系</p> </div> <form id="form-analytcs" action="https://seo.computer/form" method="post" class="modal__contents_inputs flex flex-wrap justify-content-between "> <input type="hidden" name="form_name" value="Страница анализатора"> <input type="hidden" name="_token" value="9leCWeOu87Q3hJImbvMNPMoaG7qwGCW8YGd0wnn7" autocomplete="off"> <div class="modal__contents_input"> <input type="text" class="form-control" placeholder="你的名字" name="name" id="name" required /> </div> <div class="modal__contents_input"> <input type="tel" class="form-control phone_input" placeholder="电话号码" id="phone" name="phone" required /> </div> <div class="modal__contents_input"> <input type="text" class="form-control" placeholder="您的网站地址" name="website" id="website" required /> </div> <button type="submit" class="button desctop">发送</button> <button type="submit" class="button mobile">发送</button> </form> <p class="policy mt-3">通过发送申请,您同意 <a href="https://seo.computer/ru/policy">有保密政策</a></p> </div> <div class="img-container d-flex align-items-start"> <!-- Rasmni o'z manzilingiz bilan almashtiring --> <img src="https://seo.computer/assets/images/modal_img.png" alt="Rasm" class="img-fluid" /> <button class="close" data-bs-dismiss="modal" aria-label="Close"> <img src="https://seo.computer/assets/images/exit.svg" alt=""> </button> </div> <!-- Forma --> </div> </div> </div> </div> <div class="modal fade" id="ModalCity" tabindex="-1" aria-labelledby="ModalCity" aria-hidden="true"> <div class="modal-dialog modal-xl modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title fs-22 fw-500" id="exampleModalLabel">选择城市</div> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="关闭"></button> </div> <div class="modal-body cites"> <div class="row mb-2"> <div class="col-sm-12"> <input class="form-control form-padding" id="search" name="query" placeholder="输入城市名称..."> </div> </div> <div class="row row-cols-1" id="cites"></div> </div> </div> </div> </div> <style>.lateload-show-buttons{display:none;}</style> <div class="social lateload-show-buttons"> <button class="shareButton tg open" data-bs-toggle="modal" data-bs-target="#SocialModal" data-bs-content="写信给 捷列格拉姆" title="写信给 捷列格拉姆 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" data-bs-link="https://t.me/t9202044461/"> <img width="24" height="24" style="display:inline-block" src="https://seo.computer/assets/images/c_telegram.webp" alt="写信给 捷列格拉姆 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" title="写信给 捷列格拉姆 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科"> </button> <button class="shareButton wt open" data-bs-toggle="modal" data-bs-target="#SocialModal" data-bs-content="写信给 沃察普" title="写信给 沃察普 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" data-bs-link="https://wa.me/79202044461"> <img width="24" height="24" style="display:inline-block" src="https://seo.computer/assets/images/c_whatsapp.webp" alt="写信给 沃察普 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" title="写信给 沃察普 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科"> </button> </div> <script defer async> setTimeout(function(){$('.lateload-show-buttons').css('display','flex').hide().fadeIn();}, 4000); </script> <!-- Modal --> <div class="modal fade" id="SocialModal" tabindex="-1" aria-labelledby="SocialModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header" style="text-align:center;"> <span style="font-size: 1.25rem;" class="modal-title" id="SocialModalLabel">联系我们</span> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body text-center"> <a type="button" class="btn btn-primary" id="Soclink" href="#">写</a> </div> </div> </div> </div> <script defer async> var SocialModal = document.getElementById('SocialModal') SocialModal.addEventListener('show.bs.modal', function (event) { setTimeout(function(el){ let halfScreenHeight = window.screen.height / 2; let coefdBlockHeight = el.offsetHeight * 1.75; //console.log(el.offsetHeight); let newTopPx = Math.round(halfScreenHeight - coefdBlockHeight); el.style.transform = 'translate(0, ' + newTopPx + 'px)'; }, 250, SocialModal.children[0]); // Button that triggered the modal var button = event.relatedTarget // Extract info from data-bs-* attributes var link = button.getAttribute('data-bs-link') var content = button.getAttribute('data-bs-content') var Soclink = SocialModal.querySelector('#Soclink') Soclink.setAttribute('href', link) Soclink.textContent = content }); (() => { 'use strict' // Fetch all the forms we want to apply custom Bootstrap validation styles to const forms = document.querySelectorAll('.needs-validation') // Loop over them and prevent submission Array.from(forms).forEach(form => { form.addEventListener('submit', event => { if (!form.checkValidity()) { event.preventDefault() event.stopPropagation() } form.classList.add('was-validated') }, false) }) })() </script> <!--JavaScripts--> <script rel="lazy" src="https://seo.computer/assets/js/jquery-3.6.0.min.js" ></script> <script defer async src="https://seo.computer/assets/js/bootstrap.min.js" ></script> <script src="https://seo.computer/assets/js/custom-blocks.js" charset="utf-8"></script><script defer async src="https://seo.computer/assets/js/jquery.mask.min.js" async></script> <!-- <script defer async src="https://seo.computer/assets/js/lottie-player.js" ></script> --> <!-- Bitrix --> <!-- <script defer async> setTimeout(function(){ (function(w,d,u){ var s=d.createElement('script');s.async=true;s.src=u+'?'+(Date.now()/60000|0); var h=d.getElementsByTagName('script')[0];h.parentNode.insertBefore(s,h); })(window,document,'https://cdn-ru.bitrix24.ru/b20061858/crm/site_button/loader_7_7psi5t.js'); setTimeout(function(){ let linksNoHref = [...document.querySelectorAll('a.b24-widget-button-social-item')]; if (linksNoHref.length > 0) { for (l of linksNoHref) { if (!l.href) l.setAttribute('href','#'); } } }, 1000); }, 4000); </script> <script defer async> window.addEventListener('onBitrixLiveChat', function(event) { var widget = event.detail.widget; widget.subscribe({ type: BX.LiveChatWidget.SubscriptionType.configLoaded, callback: function() { widget.addLocalize({BX_LIVECHAT_LOADING: ' '}); widget.addLocalize({BX_LIVECHAT_ERROR_TITLE: ' '}); widget.addLocalize({ BX_LIVECHAT_VOTE_BUTTON: ' ', BX_LIVECHAT_ERROR_DESC: ' ', BX_MESSENGER_TEXTAREA_PLACEHOLDER: '✎...', }) } }); }); </script> <style>.b24-widget-button-wrapper.b24-widget-button-position-bottom-right, .b24-widget-button-wrapper.b24-widget-button-position-bottom-middle, .b24-widget-button-wrapper.b24-widget-button-position-bottom-left {bottom: 5px; right: 2px;} .bx-livechat-logo-name, .bx-livechat-logo-icon, .bx-livechat-copyright-link, .bx-livechat-help-title-lg, .bx-im-dialog-group-date, .b24-form-sign, .bx-imopenlines-message-dialog-number, .bx-imopenlines-form-result-title, .bx-livechat-user-position, .bx-im-message-type-system .bx-im-message-content, .b24-form-control-alert-message, .bx-touch .b24-widget-button-position-bottom-right .b24-widget-button-popup-triangle {display:none} .bx-livechat-help-title-sm {font-size:0px;} .b24-form-wrapper {min-height: 150px !important;} .bx-imopenlines-form-result-container {min-height: 50px !important;} .bx-imopenlines-form-result-container.bx-imopenlines-form-success {background: none;border-bottom: none;} .bx-touch .b24-widget-button-position-bottom-right .b24-widget-button-popup {left: -240px !important; bottom: 5px !important;}</style> --> <!-- /Bitrix --> <!-- Yandex.Metrika counter --> <script defer async type="text/javascript" async> setTimeout(function(){ (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(86303743, "init", { clickmap:true, trackLinks:true, accurateTrackBounce:true, webvisor:true, ecommerce:"dataLayer" }); }, 4000); </script> <noscript><div><img width="1" height="1" src="https://mc.yandex.ru/watch/86303743" style="position:absolute; left:-9999px;" alt="" /></div></noscript> <!-- /Yandex.Metrika counter --> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-R6MGYCXWFG"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-R6MGYCXWFG'); </script> <!-- Top100 (Kraken) Counter --> <script defer async> setTimeout(function(){ (function (w, d, c) { (w[c] = w[c] || []).push(function() { var options = { project: 7728665, }; try { w.top100Counter = new top100(options); } catch(e) { } }); var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () { n.parentNode.insertBefore(s, n); }; s.type = "text/javascript"; s.async = true; s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//st.top100.ru/top100/top100.js"; if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); } })(window, document, "_top100q"); }, 4000); </script> <noscript> <img width="1" height="1" src="//counter.rambler.ru/top100.cnt?pid=7728665" alt="头 100 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" title="头 100 JavaScript SEO的基础:如何提高网站在Google中的可见性 莫斯科" /> </noscript> <!-- END Top100 (Kraken) Counter --> <script defer async> $(document).ready(function() { $(".form").submit(function(e) { e.preventDefault(); var form = $(this); if (form.find('input:invalid').length === 0) { $.ajax({ type: "POST", url: form.attr('action'), datatype: 'json', data: form.serialize(), // serializes the form's elements. success: function(data) { if(data.message === true) { $('#SuccessModal').modal('show'); form.trigger('reset'); } } }); } }); $("#form-analytcs").submit(function(e) { e.preventDefault(); var form = $(this); if (form.find('input:invalid').length === 0) { $.ajax({ type: "POST", url: form.attr('action'), datatype: 'json', data: form.serialize(), // serializes the form's elements. success: function(data) { if(data.message === true) { $('#myModal').modal('hide'); $('#SuccessModal').modal('show'); form.trigger('reset'); } } }); } }); // ---- Analyzer redirect: hijack hero_form to push directly into seo-analyzer ---- $('form.hero_form[data-analyzer-redirect="1"]').on('submit', function(e){ var form = $(this); var input = form.find('input[name="domain"]'); var raw = (input.val() || '').trim(); if (!raw) { return; } var endpoint = form.attr('data-analyzer-url') || 'https://seo-analyzer.seo.computer/domain'; // Normalize: drop scheme, leading www, trailing slash, anything after first slash/space var host = raw.replace(/^https?:\/\//i,'').replace(/^www\./i,'').split(/[\/\?#\s]/)[0].toLowerCase(); if (!host || host.indexOf('.') === -1) { return; } e.preventDefault(); // Build hidden form and submit it (POST so analyzer can read $_POST['url']) var hf = $('<form>').attr({method:'POST', action: endpoint}).css('display','none'); hf.append($('<input>').attr({type:'hidden', name:'url', value: host})); $('body').append(hf); hf[0].submit(); }); $('.content_toggle').click(function(){ $('.content_block').toggleClass('hide'); if ($('.content_block').hasClass('hide')) { $('.content_toggle').html('阅读更多'); } else { $('.content_toggle').html('坍塌'); } return false; }); $('.load-more').click(function () { var button = $(this); var link = $(this).data('cat'); var page = $(this).data('page'); var count = page + 1; $.ajax({ type: "GET", url: 'https://seo.computer/cn/' + link +'?page=' + page, success: function(response) { if (response.html === ''){ button.fadeOut('slow'); } else { $('#' + link + '_results').append(response.html); button.data('page', count); } }, error: function(request, status, error) { console.log(request); } }); }); $('#languageForm').on('submit', function(e) { e.preventDefault(); $.ajax({ type: 'POST', url: 'https://seo.computer/change-language', data: $('#languageForm').serialize(), success: function(data) { if (data.message === true) { // Обновите URL с новым языком var currentUrl = window.location.href; var split = currentUrl.split('/'); split[3] = data.lang; var newUrl = split.join('/'); if (currentUrl === newUrl) { window.location = '/' + data.lang + '/'; } else { window.location = newUrl; } } } }); }); $('#search').on('input', function(e) { e.preventDefault(); var query = $(this).val(); $.ajax({ type: 'GET', url: 'https://seo.computer/search', data: { query: query, locale: 'cn' }, success: function(data) { var results = $('#cites'); results.empty(); if (data.length > 0) { data.forEach(function(city) { results.append($('<a class="col text-decoration-none text-dark">').text(city.prepositional).attr('href', 'https://' + city.slug + '.seo.computer/cn')); }); } else { results.html('<div class="col"><span>未找到结果。</span></div>'); } } }); }); }); </script> <script defer async> (function(){ async function hrefifyLinks(){ let linksnh = []; while (linksnh.length < 2) { linksnh = [...document.querySelectorAll('a')].filter(v=>v.getAttribute('href')===null); if (linksnh.length < 2) { await new Promise(r=>setTimeout(r,500)); } } for (let l of linksnh) {l.href = '#';} } hrefifyLinks(); })(); </script> </body> </html>