Últimos assuntos personalizado
4 participantes
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1 • Compartilhe
Últimos assuntos personalizado
Detalhes da questão
Endereço do fórum: http://replicagames.forumeiros.com/
Versão do fórum: ModernBB
Descrição
Algum poderia me explicar como editar esse código?
https://ajuda.forumeiros.com/t107984-ultimos-assuntos-com-numero-de-respostas-e-botao-scroll#756388
Queria poder deixar com esses links e com o tempo poder add mas
Novidades
LINKs
http://replicagames.forumeiros.com/f1-anuncios
http://replicagames.forumeiros.com/f6-faqs-guias
Tutoriais
LINKS
http://replicagames.forumeiros.com/f8-metin2
http://replicagames.forumeiros.com/f34-minecraft
Re: Últimos assuntos personalizado
Olá autor, boa noite.
Crie um novo js com investimento no indice esse código:
No código tem esse trecho:
Para adicionar novos fóruns para aparecer os tópicos na aba basta colocar , valor do fórum, exemplo:
Até mais.
Crie um novo js com investimento no indice esse código:
- Código:
$(document).ready(function() {
var box = $("#box_index");
box.html(
'<div class="news">' +
' <div class="ntab fw"></div>' +
' <div class="ncont por">' +
' <ul id="loaded_topics"></ul>' +
' </div>' +
'</div>' +
'<style>' +
'.news {' +
' margin-top: 16px;' +
' height: auto;' +
' max-height: 324px;' +
' background: #fcfcfc;' +
'}' +
'.ntab {' +
' border: 1px solid #cacaca;' +
' border-bottom-width: 1px;' +
' border-top-width: 3px;' +
' height: 46px;' +
' background: #f2f2f2;' +
'}' +
'.ntab .on {' +
' margin: -3px 0 0 -1px;' +
' border: 1px solid #cacaca;' +
' border-top: 3px solid #a3a3a3;' +
' border-bottom: 1px solid #fcfcfc;' +
' background: #fcfcfc;' +
'}' +
'.ntab a {' +
' display: inline-block;' +
' float: left;' +
' height: 20px;' +
' padding: 13px 0;' +
' line-height: 20px;' +
' text-align: center;' +
' cursor: pointer;' +
' font-size: 16px;' +
'}' +
'.ntab span {' +
' display: inline-block;' +
' width: 140px;' +
' text-align: center;' +
' border-right: 1px solid #cacaca;' +
'}' +
'.ntab .on span, .ntab .last span {' +
' border: 0;' +
'}' +
'.ncont {' +
' border: 1px solid #cacaca;' +
' border-top-width: 0;' +
'}' +
'.por {' +
' position: relative;' +
'}' +
'ul, ol {' +
' padding-left: 0 !important;' +
' list-style-type: none;' +
'}' +
'.ncont li {' +
' border-bottom: 1px dashed #e6e6e6;' +
' line-height: 30px;' +
' display: list-item;' +
'}' +
'.ncont li a {' +
' padding: 0 12px 0 28px;' +
' background: url(https://cdn3.iconfinder.com/data/icons/faticons/32/message-01-16.png) no-repeat 5px center;' +
' display: block;' +
'}' +
'.ncont li a:hover {' +
' background-color: #e9e9e9;' +
'}' +
'.ncont li span {' +
' float: right;' +
' color: #716e6e;' +
'}' +
'</style>'
);
var subForuns = {
"Novidades": [1, 6]
"Tutoriais": [8, 34]
};
$.each(subForuns, function(e, val) {
$(".ntab.fw", box).append("<a href='javascript:void(0);' class='tabIndex' attr-data='" + ($.isArray(val) ? val.join(',') : val) + "'><span>" + e + "</span></a>");
}); // End each
var firstTab = $(".tabIndex:first", box); // Primeira tab
firstTab.addClass('on'); // Adicionar classe "on" na primeira tab
var id = firstTab.attr('attr-data'); // Pegar id do fórum na primeira tab
function load_topics() {
var ids = id.split(',');
var $topics = $("#loaded_topics", box);
$topics.html("<center><img src='http://imgur.com/oYkqPvl.gif' style='height:100px;' alt></center>");
var list = [];
var deferreds = [];
var qtd = Math.max(ids.length, 16); // Quantidade de tópicos que irá aparecer
var qtdTopic = Math.floor(qtd / ids.length); // Quantidade de tópicos por fórum
$.each(ids, function(index, id) {
deferreds.push($.ajax({
type: "GET",
url: "/f" + id + "-",
success: function(data) {
$("#main-content .table:last a.topictitle:lt(" + qtdTopic + ")", data).each(function() {
var linkTopico =$(this).attr("href"),
nomeTopico = $(this).text(),
autor = $(this).closest("tr").find("td.tcl a[href^='/u']").text(),
qtdRespostas = $(this).closest("tr").find("td.tc2").text(),
qtdVisualizacoes = $(this).closest("tr").find("td.tc3").text(),
acv = "<span>por " + autor + " - Comentários: " + qtdRespostas + " - Visto: " + qtdVisualizacoes + "</span>";
if($(".blog_comments", data).length) {
acv = "<span>" + $(this).closest("tr").find(".blog_comments").text() + "</span>";
}
list.push("<li><a href='" + linkTopico + "' target='_blank'>" + acv + "" + nomeTopico + "</a></li>");
});
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
}));
});
$.when.apply($, deferreds).then(function() {
$topics.html('');
$.each(list, function(index, elem) {
$topics.append(elem);
});
});
}
load_topics(); // Carregar função load_topics
$(".tabIndex").click(function(e) {
$('.on').removeClass('on'); // Remover classe on da tab
$(this).addClass('on'); // Adicionar classe on na tab clicada
id = $(this).attr('attr-data'); // Pegar id do fórum na tab clicada
load_topics(); // Carregar função load_topics
});
});
No código tem esse trecho:
- Código:
var subForuns = {
"Novidades": [1, 6]
"Tutoriais": [8, 34]
};
Para adicionar novos fóruns para aparecer os tópicos na aba basta colocar , valor do fórum, exemplo:
- Código:
var subForuns = {
"Novidades": [1, 6, 8]
"Tutoriais": [8, 34]
};
Até mais.
Re: Últimos assuntos personalizado
Agora não aparece nadawhile escreveu:Olá autor, boa noite.
Crie um novo js com investimento no indice esse código:
- Código:
$(document).ready(function() {
var box = $("#box_index");
box.html(
'<div class="news">' +
' <div class="ntab fw"></div>' +
' <div class="ncont por">' +
' <ul id="loaded_topics"></ul>' +
' </div>' +
'</div>' +
'<style>' +
'.news {' +
' margin-top: 16px;' +
' height: auto;' +
' max-height: 324px;' +
' background: #fcfcfc;' +
'}' +
'.ntab {' +
' border: 1px solid #cacaca;' +
' border-bottom-width: 1px;' +
' border-top-width: 3px;' +
' height: 46px;' +
' background: #f2f2f2;' +
'}' +
'.ntab .on {' +
' margin: -3px 0 0 -1px;' +
' border: 1px solid #cacaca;' +
' border-top: 3px solid #a3a3a3;' +
' border-bottom: 1px solid #fcfcfc;' +
' background: #fcfcfc;' +
'}' +
'.ntab a {' +
' display: inline-block;' +
' float: left;' +
' height: 20px;' +
' padding: 13px 0;' +
' line-height: 20px;' +
' text-align: center;' +
' cursor: pointer;' +
' font-size: 16px;' +
'}' +
'.ntab span {' +
' display: inline-block;' +
' width: 140px;' +
' text-align: center;' +
' border-right: 1px solid #cacaca;' +
'}' +
'.ntab .on span, .ntab .last span {' +
' border: 0;' +
'}' +
'.ncont {' +
' border: 1px solid #cacaca;' +
' border-top-width: 0;' +
'}' +
'.por {' +
' position: relative;' +
'}' +
'ul, ol {' +
' padding-left: 0 !important;' +
' list-style-type: none;' +
'}' +
'.ncont li {' +
' border-bottom: 1px dashed #e6e6e6;' +
' line-height: 30px;' +
' display: list-item;' +
'}' +
'.ncont li a {' +
' padding: 0 12px 0 28px;' +
' background: url(https://cdn3.iconfinder.com/data/icons/faticons/32/message-01-16.png) no-repeat 5px center;' +
' display: block;' +
'}' +
'.ncont li a:hover {' +
' background-color: #e9e9e9;' +
'}' +
'.ncont li span {' +
' float: right;' +
' color: #716e6e;' +
'}' +
'</style>'
);
var subForuns = {
"Novidades": [1, 6]
"Tutoriais": [8, 34]
};
$.each(subForuns, function(e, val) {
$(".ntab.fw", box).append("<a href='javascript:void(0);' class='tabIndex' attr-data='" + ($.isArray(val) ? val.join(',') : val) + "'><span>" + e + "</span></a>");
}); // End each
var firstTab = $(".tabIndex:first", box); // Primeira tab
firstTab.addClass('on'); // Adicionar classe "on" na primeira tab
var id = firstTab.attr('attr-data'); // Pegar id do fórum na primeira tab
function load_topics() {
var ids = id.split(',');
var $topics = $("#loaded_topics", box);
$topics.html("<center><img src='http://imgur.com/oYkqPvl.gif' style='height:100px;' alt></center>");
var list = [];
var deferreds = [];
var qtd = Math.max(ids.length, 16); // Quantidade de tópicos que irá aparecer
var qtdTopic = Math.floor(qtd / ids.length); // Quantidade de tópicos por fórum
$.each(ids, function(index, id) {
deferreds.push($.ajax({
type: "GET",
url: "/f" + id + "-",
success: function(data) {
$("#main-content .table:last a.topictitle:lt(" + qtdTopic + ")", data).each(function() {
var linkTopico =$(this).attr("href"),
nomeTopico = $(this).text(),
autor = $(this).closest("tr").find("td.tcl a[href^='/u']").text(),
qtdRespostas = $(this).closest("tr").find("td.tc2").text(),
qtdVisualizacoes = $(this).closest("tr").find("td.tc3").text(),
acv = "<span>por " + autor + " - Comentários: " + qtdRespostas + " - Visto: " + qtdVisualizacoes + "</span>";
if($(".blog_comments", data).length) {
acv = "<span>" + $(this).closest("tr").find(".blog_comments").text() + "</span>";
}
list.push("<li><a href='" + linkTopico + "' target='_blank'>" + acv + "" + nomeTopico + "</a></li>");
});
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
}));
});
$.when.apply($, deferreds).then(function() {
$topics.html('');
$.each(list, function(index, elem) {
$topics.append(elem);
});
});
}
load_topics(); // Carregar função load_topics
$(".tabIndex").click(function(e) {
$('.on').removeClass('on'); // Remover classe on da tab
$(this).addClass('on'); // Adicionar classe on na tab clicada
id = $(this).attr('attr-data'); // Pegar id do fórum na tab clicada
load_topics(); // Carregar função load_topics
});
});
No código tem esse trecho:
- Código:
var subForuns = {
"Novidades": [1, 6]
"Tutoriais": [8, 34]
};
Para adicionar novos fóruns para aparecer os tópicos na aba basta colocar , valor do fórum, exemplo:
- Código:
var subForuns = {
"Novidades": [1, 6, 8]
"Tutoriais": [8, 34]
};
Até mais.
Re: Últimos assuntos personalizado
Troque o código principal por esse:
E configure o script como instruído pelo @while.
- Código:
$(document).ready(function() {
var box = $("#box_index");
box.html(
'<div class="news">' +
' <div class="ntab fw"></div>' +
' <div class="ncont por">' +
' <ul id="loaded_topics"></ul>' +
' </div>' +
'</div>' +
'<style>' +
'.news {' +
' margin-top: 16px;' +
' height: auto;' +
' max-height: 324px;' +
' background: #fcfcfc;' +
'}' +
'.ntab {' +
' border: 1px solid #cacaca;' +
' border-bottom-width: 1px;' +
' border-top-width: 3px;' +
' height: 46px;' +
' background: #f2f2f2;' +
'}' +
'.ntab .on {' +
' margin: -3px 0 0 -1px;' +
' border: 1px solid #cacaca;' +
' border-top: 3px solid #a3a3a3;' +
' border-bottom: 1px solid #fcfcfc;' +
' background: #fcfcfc;' +
'}' +
'.ntab a {' +
' display: inline-block;' +
' float: left;' +
' height: 20px;' +
' padding: 13px 0;' +
' line-height: 20px;' +
' text-align: center;' +
' cursor: pointer;' +
' font-size: 16px;' +
'}' +
'.ntab span {' +
' display: inline-block;' +
' width: 140px;' +
' text-align: center;' +
' border-right: 1px solid #cacaca;' +
'}' +
'.ntab .on span, .ntab .last span {' +
' border: 0;' +
'}' +
'.ncont {' +
' border: 1px solid #cacaca;' +
' border-top-width: 0;' +
'}' +
'.por {' +
' position: relative;' +
'}' +
'ul, ol {' +
' padding-left: 0 !important;' +
' list-style-type: none;' +
'}' +
'.ncont li {' +
' border-bottom: 1px dashed #e6e6e6;' +
' line-height: 30px;' +
' display: list-item;' +
'}' +
'.ncont li a {' +
' padding: 0 12px 0 28px;' +
' background: url(https://cdn3.iconfinder.com/data/icons/faticons/32/message-01-16.png) no-repeat 5px center;' +
' display: block;' +
'}' +
'.ncont li a:hover {' +
' background-color: #e9e9e9;' +
'}' +
'.ncont li span {' +
' float: right;' +
' color: #716e6e;' +
'}' +
'</style>'
);
var subForuns = {
"Novidades": [1, 6],
"Tutoriais": [8, 34]
};
$.each(subForuns, function(e, val) {
$(".ntab.fw", box).append("<a href='javascript:void(0);' class='tabIndex' attr-data='" + ($.isArray(val) ? val.join(',') : val) + "'><span>" + e + "</span></a>");
}); // End each
var firstTab = $(".tabIndex:first", box); // Primeira tab
firstTab.addClass('on'); // Adicionar classe "on" na primeira tab
var id = firstTab.attr('attr-data'); // Pegar id do fórum na primeira tab
function load_topics() {
var ids = id.split(',');
var $topics = $("#loaded_topics", box);
$topics.html("<center><img src='http://imgur.com/oYkqPvl.gif' style='height:100px;' alt></center>");
var list = [];
var deferreds = [];
var qtd = Math.max(ids.length, 16); // Quantidade de tópicos que irá aparecer
var qtdTopic = Math.floor(qtd / ids.length); // Quantidade de tópicos por fórum
$.each(ids, function(index, id) {
deferreds.push($.ajax({
type: "GET",
url: "/f" + id + "-",
success: function(data) {
$("#main-content .forumbg:last .topictitle:lt(" + qtdTopic + ")", data).each(function() {
var linkTopico =$(this).attr("href"),
nomeTopico = $(this).text(),
autor = $(this).closest("dl").find(".lastpost a[href^='/u']").text(),
qtdRespostas = $(this).closest("dl").find(".posts").text(),
qtdVisualizacoes = $(this).closest("dl").find(".views").text(),
acv = "<span>por " + autor + " - Comentários: " + qtdRespostas + " - Visto: " + qtdVisualizacoes + "</span>";
if($(".blog_comments", data).length) {
acv = "<span>" + $(this).closest("tr").find(".blog_comments").text() + "</span>";
}
list.push("<li><a href='" + linkTopico + "' target='_blank'>" + acv + "" + nomeTopico + "</a></li>");
});
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
}));
});
$.when.apply($, deferreds).then(function() {
$topics.html('');
$.each(list, function(index, elem) {
$topics.append(elem);
});
});
}
load_topics(); // Carregar função load_topics
$(".tabIndex").click(function(e) {
$('.on').removeClass('on'); // Remover classe on da tab
$(this).addClass('on'); // Adicionar classe on na tab clicada
id = $(this).attr('attr-data'); // Pegar id do fórum na tab clicada
load_topics(); // Carregar função load_topics
});
});
E configure o script como instruído pelo @while.
Re: Últimos assuntos personalizado
Entendei como funciona agora mas tem como fazer ele usar os fórum dos subforum? e sempre pegar os mas recentes e não todos?Kyo Panda escreveu:Troque o código principal por esse:
- Código:
$(document).ready(function() {
var box = $("#box_index");
box.html(
'<div class="news">' +
' <div class="ntab fw"></div>' +
' <div class="ncont por">' +
' <ul id="loaded_topics"></ul>' +
' </div>' +
'</div>' +
'<style>' +
'.news {' +
' margin-top: 16px;' +
' height: auto;' +
' max-height: 324px;' +
' background: #fcfcfc;' +
'}' +
'.ntab {' +
' border: 1px solid #cacaca;' +
' border-bottom-width: 1px;' +
' border-top-width: 3px;' +
' height: 46px;' +
' background: #f2f2f2;' +
'}' +
'.ntab .on {' +
' margin: -3px 0 0 -1px;' +
' border: 1px solid #cacaca;' +
' border-top: 3px solid #a3a3a3;' +
' border-bottom: 1px solid #fcfcfc;' +
' background: #fcfcfc;' +
'}' +
'.ntab a {' +
' display: inline-block;' +
' float: left;' +
' height: 20px;' +
' padding: 13px 0;' +
' line-height: 20px;' +
' text-align: center;' +
' cursor: pointer;' +
' font-size: 16px;' +
'}' +
'.ntab span {' +
' display: inline-block;' +
' width: 140px;' +
' text-align: center;' +
' border-right: 1px solid #cacaca;' +
'}' +
'.ntab .on span, .ntab .last span {' +
' border: 0;' +
'}' +
'.ncont {' +
' border: 1px solid #cacaca;' +
' border-top-width: 0;' +
'}' +
'.por {' +
' position: relative;' +
'}' +
'ul, ol {' +
' padding-left: 0 !important;' +
' list-style-type: none;' +
'}' +
'.ncont li {' +
' border-bottom: 1px dashed #e6e6e6;' +
' line-height: 30px;' +
' display: list-item;' +
'}' +
'.ncont li a {' +
' padding: 0 12px 0 28px;' +
' background: url(https://cdn3.iconfinder.com/data/icons/faticons/32/message-01-16.png) no-repeat 5px center;' +
' display: block;' +
'}' +
'.ncont li a:hover {' +
' background-color: #e9e9e9;' +
'}' +
'.ncont li span {' +
' float: right;' +
' color: #716e6e;' +
'}' +
'</style>'
);
var subForuns = {
"Novidades": [1, 6],
"Tutoriais": [8, 34]
};
$.each(subForuns, function(e, val) {
$(".ntab.fw", box).append("<a href='javascript:void(0);' class='tabIndex' attr-data='" + ($.isArray(val) ? val.join(',') : val) + "'><span>" + e + "</span></a>");
}); // End each
var firstTab = $(".tabIndex:first", box); // Primeira tab
firstTab.addClass('on'); // Adicionar classe "on" na primeira tab
var id = firstTab.attr('attr-data'); // Pegar id do fórum na primeira tab
function load_topics() {
var ids = id.split(',');
var $topics = $("#loaded_topics", box);
$topics.html("<center><img src='http://imgur.com/oYkqPvl.gif' style='height:100px;' alt></center>");
var list = [];
var deferreds = [];
var qtd = Math.max(ids.length, 16); // Quantidade de tópicos que irá aparecer
var qtdTopic = Math.floor(qtd / ids.length); // Quantidade de tópicos por fórum
$.each(ids, function(index, id) {
deferreds.push($.ajax({
type: "GET",
url: "/f" + id + "-",
success: function(data) {
$("#main-content .forumbg:last .topictitle:lt(" + qtdTopic + ")", data).each(function() {
var linkTopico =$(this).attr("href"),
nomeTopico = $(this).text(),
autor = $(this).closest("dl").find(".lastpost a[href^='/u']").text(),
qtdRespostas = $(this).closest("dl").find(".posts").text(),
qtdVisualizacoes = $(this).closest("dl").find(".views").text(),
acv = "<span>por " + autor + " - Comentários: " + qtdRespostas + " - Visto: " + qtdVisualizacoes + "</span>";
if($(".blog_comments", data).length) {
acv = "<span>" + $(this).closest("tr").find(".blog_comments").text() + "</span>";
}
list.push("<li><a href='" + linkTopico + "' target='_blank'>" + acv + "" + nomeTopico + "</a></li>");
});
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
}));
});
$.when.apply($, deferreds).then(function() {
$topics.html('');
$.each(list, function(index, elem) {
$topics.append(elem);
});
});
}
load_topics(); // Carregar função load_topics
$(".tabIndex").click(function(e) {
$('.on').removeClass('on'); // Remover classe on da tab
$(this).addClass('on'); // Adicionar classe on na tab clicada
id = $(this).attr('attr-data'); // Pegar id do fórum na tab clicada
load_topics(); // Carregar função load_topics
});
});
E configure o script como instruído pelo @while.
Re: Últimos assuntos personalizado
Monkey.D.Luffy escreveu:Entendei como funciona agora mas tem como fazer ele usar os fórum dos subforum? e sempre pegar os mas recentes e não todos?
Não e não. Para os fóruns dos subfóruns, o senhor terá que inserir manualmente os valores nas configurações:
- Código:
var subForuns = {
"Novidades": [1, 6],
"Tutoriais": [8, 34],
"Tutoriais subfóruns": [1, 2, 3, 4, 5]
};
E o código pegará apenas as N mensagens mais recentes de cada fórum.
- Código:
var qtd = Math.max(ids.length, 16); // Quantidade de tópicos que irá aparecer
Como ali está definido 16, para Tutorials, ele pegará 8 mensagens de cada uns dos fóruns, pois existem dois subfóruns configurados (16 / 2 = 8). Para Tutoriais subfóruns, ele pegará 3 de cada subfórum (16 / 5 = 3). Essa é uma limitação do script.
Última edição por Luiz~ em 27.03.17 23:09, editado 1 vez(es) (Motivo da edição : Desativei os Smileys, pois estavam dando conflito com a explicação.)
Re: Últimos assuntos personalizado
Kyo Panda escreveu:Monkey.D.Luffy escreveu:Entendei como funciona agora mas tem como fazer ele usar os fórum dos subforum? e sempre pegar os mas recentes e não todos?
Não e não. Para os fóruns dos subfóruns, o senhor terá que inserir manualmente os valores nas configurações:
- Código:
var subForuns = {
"Novidades": [1, 6],
"Tutoriais": [8, 34],
"Tutoriais subfóruns": [1, 2, 3, 4, 5]
};
E o código pegará apenas as N mensagens mais recentes de cada fórum.
- Código:
var qtd = Math.max(ids.length, 16); // Quantidade de tópicos que irá aparecer
Como ali está definido 16, para Tutorials, ele pegará 8 mensagens de cada uns dos fóruns, pois existem dois subfóruns configurados (16 / 2 = . Para Tutoriais subfóruns, ele pegará 3 de cada subfórum (16 / 5 = 3). Essa é uma limitação do script.
Obg ajudo muito
Re: Últimos assuntos personalizado
Questão marcada como Resolvida ou o Autor solicitou que ela fosse arquivada. Tópico marcado como Resolvido e movido para "Questões resolvidas". |
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos