JavaScript 如何检查一个URL是否包含哈希值

JavaScript 如何检查一个URL是否包含哈希值

概述

用JavaScript检查统一资源定位器(U.R.L.)是否包含哈希值(#text),因为JavaScript包含一些预构建的方法,这使得获得某个目标成为一件简单的事情。这可以通过使用JavaScript中的哈希属性来实现,它可以通过初始化window.location对象来访问。它简化了用户界面,并提供了一个最重要的网页导航。

为了建立这个解决方案,我们需要有以下方面的知识

  • HTML–要建立页面的骨架。其中,我们将使用一个内部的
  • HTML事件(onclick(), onchange(), etc.)

  • JavaScript窗口对象、位置对象、哈希属性。

  • 语法

    本程序中使用的基本语法是—

    window.location.hash
    

    语法。

    (window.property/methodName)
    

    语法。

    window.location.propertyName
    

    算法

    例子

    在给定的代码中,它包含一个HTML按钮,其中包含 “onclick() “事件处理程序,其中给出了JavaScript用户定义的函数 “checkHash()”。当<button>被点击时,checkHash()函数被触发。

    <!DOCTYPE html>
    <html lang="en">
    <head>
       <title>Check the Hash in URL</title>
       <style>
          body{
             border: 1px solid black;
             text-align: center;
          }
       </style>
    </head>
    <body>
       <p>
          <strong> OUTPUT HASH- </strong>   
          <span id="outputVal" style="padding:3px;"> </span>// Output will be shown here 
       </p>
          
       <button onclick="checkHash()">Check URL Hash</button><br>
       <a href="#java">add hash(#) to url</a><br>
       
       <!-- JavaScript function starts from here -->
    
       <script>
          checkHash=()=>{
             var h = window.location.hash;
             if(window.location.hash){
                document.getElementById("outputVal").innerText="Hash found "+h;
                document.getElementById("outputVal").style.background="lightgreen";
             } else {
                document.getElementById("outputVal").innerText="No Hash Found";
                document.getElementById("outputVal").style.background="tomato";
             }
          }
       </script>
    
       <!-- JavaScript function ends here -->
    </body>
    </html>
    

    在点击了锚文本之后 −

    在这种状态下,网页的URL(http://127.0.0.1:3000/index.html)不包含任何#文字,如下图中的地址栏所示,因此window.location.hash没有在引用的变量中存储任何东西,因此它返回false,输出 “没有发现hash”。

    在点击锚文本后,HTML属性 href=”#java “的值与当前URL相连接,因此window.location.hash包含连接的哈希文本 “#java”,因此它返回true,变量 “h “中存储有哈希的名称,”h “变量将在if-else条件下被检查,其输出将显示在 “outputVal “id容器中。

    结论

    当锚定链接被点击时,它将我们重定向到哈希值的内容。

    这为用户提供了一个交互式的界面,为用户提供了走向哈希链接内容的方向。Location对象也有许多有利的属性,如href、origin、pathname等。窗口对象还提供了各种操作浏览器的方法,如位置、历史、open()、close()等。

    Python教程

    Java教程

    Web教程

    数据库教程

    图形图像教程

    大数据教程

    开发工具教程

    计算机教程

    JavaScript 教程