Heim  >  Artikel  >  Web-Frontend  >  Optimierungsmethode für Hash, wenn LayPage auf einer einzelnen Seite aktiviert ist (Code)

Optimierungsmethode für Hash, wenn LayPage auf einer einzelnen Seite aktiviert ist (Code)

不言
不言Original
2018-08-25 15:57:092254Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Hash-Optimierungsmethode (Code), wenn die Laypage auf einer einzelnen Seite aktiviert ist. Ich hoffe, dass er für Sie hilfreich ist .

Wenn eine einzelne Seite verwendet wird, wird durch Öffnen des Hashs auf der Layoutseite der vorherige Hash gelöscht

Lösungsidee: Passen Sie die Hash-Sprungmethode und die aktuelle Berechnungsmethode an

Der Hash danach lautet „This is #/data/tiebaluntan#!page=98“

Es gibt zwei Stellen zum Ändern:

laypage.js

//渲染分页
  Class.prototype.render = function(load){
    var that = this
    ,config = that.config
    ,type = that.type()
    ,view = that.view();
    
    if(type === 2){
      config.elem && (config.elem.innerHTML = view);
    } else if(type === 3){
      config.elem.html(view);
    } else {
      if(doc[id](config.elem)){
        doc[id](config.elem).innerHTML = view;
      }
    }
    config.jump && config.jump(config, load);
    
    var elem = doc[id]('layui-laypage-' + config.index);
    that.jump(elem);
    
    if(config.hash && !load){
      // location.hash = '!'+ config.hash +'='+ config.curr;   // 屏蔽掉该行,修改为下一行
      location.hash = location.hash.substr(0,location.hash.indexOf("#!")==-1 ? 99999:location.hash.indexOf("#!")) + '#!'+ config.hash +'='+ config.curr;
    }
    
    that.skip(elem);
  };

Das andere ist die Darstellung der Seite. Die Berechnung von curr kann nicht auf dem offiziellen Tutorial basieren, sondern muss wie folgt erfolgen:

//开启HASH
        laypage.render({
            elem: 'test-laypage-demo5'
            ,count: 500
            //,curr: location.hash.replace('#!fenye=', '') //获取hash值为fenye的当前页
            ,curr: location.hash.indexOf("#!")==-1 ? "" : location.hash.substr(location.hash.indexOf("#!"),).replace('#!fenye=', '')//获取hash值为fenye的当前页
            ,hash: 'fenye' //自定义hash值
        });

Verwandte Empfehlungen:

Wie man es implementiert der unendliche Selektor basierend auf Laui (mit Code)

Konfliktlösung zwischen dynamischer Darstellung der Laui-Form und vue.js (mit Code)

Das obige ist der detaillierte Inhalt vonOptimierungsmethode für Hash, wenn LayPage auf einer einzelnen Seite aktiviert ist (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn