[TUTORIAL] Adicionar paginação na versão mobile

Ver o tópico anterior Ver o tópico seguinte Ir para baixo

Principal Contribuidor

[TUTORIAL] Adicionar paginação na versão mobile Empty [TUTORIAL] Adicionar paginação na versão mobile

Mensagem por Sennior 03.10.15 22:36


[TUTORIAL] Adicionar paginação na versão mobile Templates

Adicionar paginação na versão mobile

A maioria já sabe que a versão móvel carece de meios para saltar para o final de um tópico. No entanto, com este tutorial, você será capaz de adicionar paginação para a versão móvel do seu fórum Forumeiros.


--> Tutoriais, dicas e astúcias <--
Adicionar paginação na versão mobile


- Noção básica da função:
As páginas javascript ativas em seu fórum possibilita inserir scripts e jquery para personalizar seu fórum, contudo é importante saber que qualquer script encontrado na internet acabam por não surgir efeito nos fóruns.


Painel de controle :seta2: Modulos :seta2: HTML & JavaScript :seta2: "Aba" Gestão dos códigos JavaScripts
[TUTORIAL] Adicionar paginação na versão mobile Painel13
[TUTORIAL] Adicionar paginação na versão mobile 110111Seta Título Correspondente ao nome da página JavaScript/jQuery que será criada.
[TUTORIAL] Adicionar paginação na versão mobile 110210Seta Localização- São destinados os devidos locais para onde você aplicará os efeitos do JavaScript nos fóruns. No nosso caso, aplicaremos Nos tópicos.
[TUTORIAL] Adicionar paginação na versão mobile 110310Seta Código JavaScript Campo destinado para receber os códigos JavaScript e jQuery. Em nosso caso, adicionaremos este código:

Código:
$(function() {
  var perpage = 15, // amount of messages before a new page is added
  p = document.getElementsByTagName('P'), l = window.location.pathname, current, last, tid = l.replace(/\/t(\d+).*/,'$1'), tname = l.replace(/(\/t\d+|\/t\d+p\d+)(-.*)/,'$2'), style = document.createElement('STYLE'), css = '.pagi {height:auto;color:#FFF;position:static;margin:2px}.pagactif{color:#FF8;cursor:default}.scroller{position:absolute;width:18px;height:28px;cursor:pointer}.left.scroller{background:url(http://2img.net/i/fa/mobile/inner-left-arrow.png) no-repeat center #444;left:65px}.right.scroller{background:url(http://2img.net/i/fa/mobile/inner-right-arrow.png) no-repeat center #444;right:65px}', i,j;

  if (typeof _userdata.page_desktop === 'undefined') return;
  style.type = 'text/css';
  if (style.styleSheet) style.styleSheet.cssText = css;
  else style.appendChild(document.createTextNode(css));
  document.getElementsByTagName('HEAD')[0].appendChild(style);
 
  for (i=0; i<p.length; i++) {
    if (/mobile_title_content/.test(p[i].className)) {
      current = Number(p[i].innerHTML.replace(/^\w+ <strong>(\d+)<\/strong> \w+ <strong>\d+<\/strong>/i,'$1'));
      last = Number(p[i].innerHTML.replace(/^\w+ <strong>\d+<\/strong> \w+ <strong>(\d+)<\/strong>/i,'$1'));
    }
  }

  if (last >= current) {
    var b = document.getElementsByTagName('DIV'), title = document.createElement('DIV'), cen = document.createElement('DIV'), left = document.createElement('DIV'), right = document.createElement('DIV'), c = 1, d = 0;
    title.className = 'mobile_title', left.className = 'left scroller', right.className = 'right scroller', cen.className = 'mobile_title_content', cen.setAttribute('style','left:85px;right:85px;text-overflow:clip;line-height:26px;');
    for (j=0; j<b.length; j++) if (/mobile_title/.test(b[j].className)) if (/\d+/.test(b[j].nextSibling.id) || /poll/.test(b[j].nextSibling.className)) b[j].parentNode.insertBefore(title,b[j].nextSibling);
    title.appendChild(cen), title.appendChild(left), title.appendChild(right);
 
    left.onmousedown = function() { cen.scrollLeft -= 100 };
    right.onmousedown = function() { cen.scrollLeft += 100 };

    while (d < 2) {
      if (d == 0 && current > 1) newPage('mobile_prev_button block', '<p>First</p>', '/t' + tid + tname, title);
      else if (d == 1 && current != last) newPage('mobile_next_button block', '<p>Last</p>', '/t' + tid + 'p' + Number(perpage * last - perpage) + tname, title);
      d += 1;
    } while (last + 1 > c) {
      if (c == current) newPage('mobile_next_button block pagi pagactif', c, 'javascript:void(0);', cen, 'currentPage');
      else newPage('mobile_next_button block pagi', c, '/t' + tid + 'p' + Number(perpage * c - perpage) + tname, cen);
      c += 1;
    }
    cen.scrollLeft = document.getElementById('currentPage').offsetLeft;
  }
  function newPage(classname, html, href, par, id) {var page = document.createElement('A'); page.className = classname, page.innerHTML = html, page.href = href, par.appendChild(page); if (id) page.id = id}
});
[TUTORIAL] Adicionar paginação na versão mobile 110410Seta Habilitar o gerenciamento dos códigos JavaScript Ao selecionar a opção sim, estará ativando a função páginas Javascript no seu fórum. Se selecionar não, as páginas serão desabilitadas no fórum.
- Ativando o código:
No script é o PerPage variável, com um valor de 15. Você deve alterar esse valor para a quantidade de mensagens que permitem por página. Para encontrar essa informação vá no painel administrativo:

Painel de controle :seta2: Geral :seta2: Mensagens & E-email :seta2: Configuração
[TUTORIAL] Adicionar paginação na versão mobile JzaUyTV


  • :seta2: Se ele já estiver fixado em 15, você não precisa editar a variável. Caso contrário, você deve alterar a 15 para o valor apresentado na configuração de mensagens, como no exemplo abaixo:

Código:
var perpage = 15, // amount of messages before a new page is added


Resultado:

[TUTORIAL] Adicionar paginação na versão mobile Screen10

[TUTORIAL] Adicionar paginação na versão mobile StopA funcionalidade do código pode variar dependendo do dispositivo móvel. Aparelhos mais novos a funcionalidade é certa, mas já para dispositivos mais velhos, pode não funcionar.



© Fórum dos Fóruns
[TUTORIAL] Adicionar paginação na versão mobile Questi11 Se tiver alguma dúvida relacionada com este tópico crie um tópico com o seguinte título:
Adicionar paginação na versão mobile
Sennior

Sennior
Principal Contribuidor
Principal Contribuidor

Membro desde : 10/06/2011
Mensagens : 16379
Pontos : 20903

https://ajuda.forumeiros.com/forum https://www.facebook.com/GladstonHenriq https://twitter.com/UmGladston

Ir para o topo Ir para baixo

Ver o tópico anterior Ver o tópico seguinte Ir para o topo

- Tópicos semelhantes

Permissões neste sub-fórum
Não podes responder a tópicos