阅读浏览器导航栏并根据它生成导航链接

时间:2017-05-04 14:21:49

标签: javascript jquery html css

我想知道是否有可以读取地址栏的脚本;

示例(不是实际链接):http://www.example.net/page-2011

并获取第2011页的部分并将其转换为

var numero= prompt ("introduce un numero")
    var resultado= parImpar(numero);
        alert ("el numero "+numero+" es "+resultado );
    
       
    
    function parImpar (numero){
       if (numero %2===0) {
          return "par" ;
       }
       else{
           return "impar" ;
       }
    }
    
    if (window.confirm ("Probemos otro numero ")){
     var numero= prompt ("Elegi");
     var resultado =parImpar (numero);
         alert("El numero "+numero+" es "+resultado );
        
    }else{
        
    }

因此,它不是必须制作3000个导航链接,而是自动生成它。作为一个额外的挑战,侧边栏是一个完全独立的页面,当你加载页面时,它会在“编译时”加载,因为缺少一个更好的术语。 http://www.example.net/nav:side这是每次加载页面时都会拉出的实际页面。

1 个答案:

答案 0 :(得分:0)

  

Window.location只读属性返回一个Location对象,其中包含有关文档当前位置的信息。

javascript Window.location

var url1 = window.location;            //returns the url as an object
var url2 = window.location.href;       //returns the url string
var url3 = window.location.pathname;   //returns the url path
  

split()方法通过将字符串分隔为子字符串将String对象拆分为字符串数组。

javascript .split()

获得网址后,您可以使用.split("-")。在您的情况下,如果每个页面都设置为/page-2,则会返回一个对象{"page","2"}

var pathSplit = url3.split("-");       //returns {"page","2"} from page-2
  

slice()方法提取字符串的一部分并返回一个新字符串。

javascript .slice()

如果您的路径以/结尾,则可以使用.slice()修剪最后一个字符。

var pathSplice = url3.slice(0,-1);     //returns /page-2 from /page-2/
var pathSplit = pathSplice.split("-"); //returns {"/page","2"} from /page-2

现在,您可以通过访问索引2处的pathSplit对象来获取页码1,然后将页码2解析为整数并执行所需的等式接收所需的页面。

var pageNum = parseInt(pathSplit[1]);
var prevPage = 0,
    nextPage = 0;
if(isNaN(pageNum) === false){
    prevPage = pageNum - 1;    //returns 1 from 2
    nextPage = pageNum + 1;    //returns 3 from 2
}
  

[Element.setAttribute()]设置指定元素的属性值。如果该属性已存在,则更新该值;否则添加具有指定名称和值的新属性。

javascript .setAttribute()

最后,您可以像这样设置锚点<a></a>的值

var prevLink = document.querySelector(".prev-link");
var nextLink = document.querySelector(".next-link");
prevLink.setAttribute("href", "/page-" + prevPage.toString());
nextLink.setAttribute("href", "/page-" + nextPage.toString());

注意:确保您已为上一页和下一页链接分配了课程或ID。