Предрелизовская версия портала удалена. Релиз здесь: Релиз Портала с упрощенным заполнением контента: "Портал Море /портация с e107 DeepBlue2/" от Deff и kolobdur74.
Отредактировано kolobdur74 (Вт, 17 Сен 2013 05:20:14)
Единый форум поддержки |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Единый форум поддержки » Новые возможности форумов » Создаем полноценный Портал на форумах MyBB!
Предрелизовская версия портала удалена. Релиз здесь: Релиз Портала с упрощенным заполнением контента: "Портал Море /портация с e107 DeepBlue2/" от Deff и kolobdur74.
Отредактировано kolobdur74 (Вт, 17 Сен 2013 05:20:14)
kolobdur74
Во - сейчас уже итоговый вид меню - приличный, почти проффи
Кстати, рекомендую После ссылки Демо. выложить ниже полный код Демо
Отредактировано Deff (Чт, 12 Сен 2013 04:18:45)
Кстати, рекомендую После ссылки Демо. выложить ниже в спойлере
Поставил.. А я чего то был уверен, что полный код выложил)))
Вставка контента в левый и правый блок:
Ксать зря заменил вставку заголовков через <H2> на вставку через <div>
ибо вставляемый контент достаточно часто содержит <div> ( к примеру те же счетчики
а вот <H2> во вставляемом контенте - редкость
Ксать зря заменил вставку заголовков через <H2> на вставку через <div>
ибо вставляемый контент достаточно часто содержит <div> ( к примеру те же счетчики
а вот <H2> во вставляемом контенте - редкость
А, да, я забыл, что хотел посоветоваться - <H2> - не вариант шрифт большой выходит, а спан тоже как и див, какой тег можно еще использовать, чтобы не влиял, и чтобы не надо было лишний раз через css его настраивать? Это и на будущее пригодится.. Желательно универсальный, не влияющий на css..
Может быть стоит воспользоваться тегом <p> или <blockquote>? Хотя вот еще, вроде хороший тег: <section> - он пойдет как думаешь? Вроде и специфичный и одновременно нейтральный..
Отредактировано kolobdur74 (Чт, 12 Сен 2013 16:01:20)
<H2>
Ну задай явное css для h2 в td#LeftNews и td#RightNews
td#LeftNews h2, td#RightNews h2{
font-size:14px!important;
}
Отредактировано Deff (Чт, 12 Сен 2013 16:07:21)
Ну задай явное css для h2 в td#LeftNews и td#RightNews
Еще один лишний код, который в следующих порталах еще надо и не забывать поставить...Как вариант тег<section>? Он может где то использоваться еще?
И еще, добавь строку красным код
//Вставляем контент в боковушки
$(function(){
$("#Inf_block_Left,#Inf_block_Right").find('script').remove();
var L=$("#Inf_block_Left").html();$("#Inf_block_Left").replaceWith("");
var R=$("#Inf_block_Right").html();$("#Inf_block_Right").replaceWith("");
Это позволит безболезненную вставку в контент скриптов
Как вариант тег<section>
Ты при распарсе - можешь заменить H2 на любой тег, но ток когда выпарсишь контент
Хотя твои переживания - излишни, ибо у тьву можно сократить твой css раза в два, а не на три строки
Ты при распарсе - можешь заменить H2 на любой тег, но ток когда выпарсишь контент
Такой вариант нормальный будет:
$(function(){ $("#Inf_block_Left,#Inf_block_Right").find('script').remove(); var L=$("#Inf_block_Left").html();$("#Inf_block_Left").replaceWith(""); var R=$("#Inf_block_Right").html();$("#Inf_block_Right").replaceWith(""); if($(".tapka").attr("id")=="tabu"){ var LeftSUM='',block1='<div class="container" style="padding:5px;" id=News_'; var block2="</div><br><br>"; var RightSUM='',block3='<div class="container1" style="padding:5px;" id=News1_'; var block4="</div><br><br>"; if(L!=null){ var c = L.split(/<section>|<\/section>/igm); for(i=1; i<c.length; i+=2){ LeftSUM+='<table class="menunaz" cellspacing="0" cellpadding="0" border="0"><tr><td class="menucaptionleft" style="white-space:nowrap"></td><td class="menucaption" style="white-space:nowrap"><section>'+c[i]+'</section></td><td class="menucaptionright" style="white-space:nowrap"></td></tr></table><table style="width:100%" cellspacing="0" cellpadding="0"><tr> <td class="menucolor"><br />'+c[i+1]+'<br /><br /></td></tr></table>'; }LeftSUM='<td id=LeftNews width=21% valign=top>'+LeftSUM+'</td>';} if(R!=null){ var c = R.split(/<section>|<\/section>/igm); for(i=1; i<c.length; i+=2){ RightSUM+='<table class="menunaz" cellspacing="0" cellpadding="0" border="0"><tr><td class="menucaptionleft" style="white-space:nowrap"></td><td class="menucaption" style="white-space:nowrap"><section>'+c[i]+'</section></td><td class="menucaptionright" style="white-space:nowrap"></td></tr></table><table style="width:100%" cellspacing="0" cellpadding="0"><tr> <td class="menucolor"><br />'+c[i+1]+'<br /><br /></td></tr></table>'; }RightSUM='<td id=RightNews width=21% valign=top>'+RightSUM+'</td>';} if(LeftSUM!=''){ $("#tab2").html('<table width=100% id="NEWS"><tr valign=top>'+LeftSUM+'</tr></table>'); }; if(RightSUM!=''){ $("#tab3").html('<table width=100% id="NEWS1"><tr valign=top>'+RightSUM+'</tr></table>'); };} });
Хотя твои переживания - излишни, ибо у тьву можно сократить твой css раза в два, а не на три строки
Я знаю, но пока еще очень плохо умею оптимизировать..Тут больше переживаю за свою память - то что буду забывать в последующем вставлять этот код - это по любому))
Тут больше переживаю за свою память - то что буду забывать в последующем вставлять этот код - это по любому
Вставить его так:
$(function(){
var styleNews = '<style>td#LeftNews h2, td#RightNews h2{font-size:14px!important;}</style>';$('body').append(styleNews);
var L=$("#Inf_block_Left").html();$("#Inf_block_Left").replaceWith("");
var R=$("#Inf_block_Right").html();$("#Inf_block_Right").replaceWith("");
if($(".tapka").attr("id")=="tabu"){
var LeftSUM='',block1='<div class="container" style="padding:5px;" id=News_';
var block2="</div><br><br>";
var RightSUM='',block3='<div class="container1" style="padding:5px;" id=News1_';
var block4="</div><br><br>";
if(L!=null){ var c = L.split(/<div>|<\/div>/igm);
for(i=1; i<c.length; i+=2){
LeftSUM+='<table class="menunaz" cellspacing="0" cellpadding="0" border="0"><tr><td class="menucaptionleft" style="white-space:nowrap"></td><td class="menucaption" style="white-space:nowrap"><div>'+c[i]+'</div></td><td class="menucaptionright" style="white-space:nowrap"></td></tr></table><table style="width:100%" cellspacing="0" cellpadding="0"><tr> <td class="menucolor"><br />'+c[i+1]+'<br /><br /></td></tr></table>';
}LeftSUM='<td id=LeftNews width=21% valign=top>'+LeftSUM+'</td>';}
if(R!=null){ var c = R.split(/<div>|<\/div>/igm);
for(i=1; i<c.length; i+=2){
RightSUM+='<table class="menunaz" cellspacing="0" cellpadding="0" border="0"><tr><td class="menucaptionleft" style="white-space:nowrap"></td><td class="menucaption" style="white-space:nowrap"><div>'+c[i]+'</div></td><td class="menucaptionright" style="white-space:nowrap"></td></tr></table><table style="width:100%" cellspacing="0" cellpadding="0"><tr> <td class="menucolor"><br />'+c[i+1]+'<br /><br /></td></tr></table>';
}RightSUM='<td id=RightNews width=21% valign=top>'+RightSUM+'</td>';}
if(LeftSUM!=''){ $("#tab2").html('<table width=100% id="NEWS"><tr valign=top>'+LeftSUM+'</tr></table>'); };
if(RightSUM!=''){ $("#tab3").html('<table width=100% id="NEWS1"><tr valign=top>'+RightSUM+'</tr></table>'); };}
});
Отредактировано Deff (Чт, 12 Сен 2013 16:31:33)
Ты при распарсе - можешь заменить H2 на любой тег, но ток когда выпарсишь контент
Ввод пользователем через H2, а вставка на страницу через section
$(function(){ $("#Inf_block_Left,#Inf_block_Right").find('script').remove(); var L=$("#Inf_block_Left").html();$("#Inf_block_Left").replaceWith(""); var R=$("#Inf_block_Right").html();$("#Inf_block_Right").replaceWith(""); if($(".tapka").attr("id")=="tabu"){ var LeftSUM='',block1='<div class="container" style="padding:5px;" id=News_'; var block2="</div><br><br>"; var RightSUM='',block3='<div class="container1" style="padding:5px;" id=News1_'; var block4="</div><br><br>"; if(L!=null){ var c = L.split(/<h2>|<\/h2>/igm); for(i=1; i<c.length; i+=2){ LeftSUM+='<table class="menunaz" cellspacing="0" cellpadding="0" border="0"><tr><td class="menucaptionleft" style="white-space:nowrap"></td><td class="menucaption" style="white-space:nowrap"><section>'+c[i]+'</section></td><td class="menucaptionright" style="white-space:nowrap"></td></tr></table><table style="width:100%" cellspacing="0" cellpadding="0"><tr> <td class="menucolor"><br />'+c[i+1]+'<br /><br /></td></tr></table>'; }LeftSUM='<td id=LeftNews width=21% valign=top>'+LeftSUM+'</td>';} if(R!=null){ var c = R.split(/<h2>|<\/h2>/igm); for(i=1; i<c.length; i+=2){ RightSUM+='<table class="menunaz" cellspacing="0" cellpadding="0" border="0"><tr><td class="menucaptionleft" style="white-space:nowrap"></td><td class="menucaption" style="white-space:nowrap"><section>'+c[i]+'</section></td><td class="menucaptionright" style="white-space:nowrap"></td></tr></table><table style="width:100%" cellspacing="0" cellpadding="0"><tr> <td class="menucolor"><br />'+c[i+1]+'<br /><br /></td></tr></table>'; }RightSUM='<td id=RightNews width=21% valign=top>'+RightSUM+'</td>';} if(LeftSUM!=''){ $("#tab2").html('<table width=100% id="NEWS"><tr valign=top>'+LeftSUM+'</tr></table>'); }; if(RightSUM!=''){ $("#tab3").html('<table width=100% id="NEWS1"><tr valign=top>'+RightSUM+'</tr></table>'); };} });
Отредактировано Deff (Чт, 12 Сен 2013 16:53:51)
Ввод пользователем через H2, а вставка на страницу через section
Заменил и отредактировал пост с порталом
Ввод пользователем через H2, а вставка на страницу через section
Этот способ лучше, потому что дает возможность влиять пользователю на шрифт в названии не редактируя js файл, при !important - это было бы невозможно..
kolobdur74
У тьву в принципе вообще можно выкинуть обрамление
<td class="menucaption" style="white-space:nowrap"><section>'+c[i]+'</section></td>
Поскольку заголовок определяется не им, а td class="menucaption
Отредактировано Deff (Чт, 12 Сен 2013 17:19:14)
Поскольку заголовок определяется не им, а td class="menucaption
Пусть наверное остается для удобства на будущее (как основа), потому как в других вариантах порталов будет и другое оформление...Я вот думаю со временем по возможности перевести в такой вид и свои предыдущие порталы, универсальный вариант, тогда можно будет и коллекцию составить...
Отредактировано kolobdur74 (Чт, 12 Сен 2013 17:25:46)
kolobdur74
Не лучше ли заменить перераспарс audio в каждом блоке на такое однократное:
//+Audio $('#paging_container1 div[id^="bib"] td').each (function () { var bib = $(this); $(this).map(function () { var stText = '<embed src="http://forumstatic.ru/files/0013/49/9f/32316.swf?mp3='; var endTxt = '&action=stop&title=Player MP3&color=b1eb95&loop=no&lma=yes&textcolor=000000" quality="high" bgcolor="#ffffff" width="260" height="60" name="FMP3" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />' bib.parents('div[id^="bib"]').find('td:contains("[audio]"):contains(".mp3")').each(function(){ var html = $(this).html().replace(/\[audio\]([^\[]+)\[\/audio\]/ig,stText+'$1'+endTxt); $(this).html(html) }); text = $(this).html(); if(text.indexOf("pleer.com") != -1) { player = /\[audio\](.*?)\/tracks\/(.*?)\[\/audio\]/gi $(this).html(text.replace(player, "<br /><embed src='http://embed.pleer.com/track?id=$2' type='application/x-shockwave-flash' wmode='transparent' width='550' height='124'></embed>")); } if(text.indexOf("zippyshare.com") != -1) { player = /\[audio\]http:\/\/www(\d+)\.zippyshare\.com\/v\/(\d+)\/file\.html\[\/audio\]/gi $(this).html(text.replace(player, "<br /><embed type='application/x-shockwave-flash' src='http://api.zippyshare.com/api/mediaplayer/mediaplayer.swf' flashvars='height=20&width=400&file=http://www$1.zippyshare.com/downloadMusic%3Fkey%3D$2%26&volume=80&autostart=false&frontcolor=0x000000&backcolor=0xffffff&lightcolor=0x000000&type=flv' quality='high' menu='false' wmode='transparent' allowscriptaccess='always' height='20' width='400' name='mp3player' border='0' style='margin-bottom: 6px;'/>")); } if(text.indexOf("http://rghost.ru") != -1) { player = /\[audio\](.*?)\/(\d+)\[\/audio\]/g $(this).html(text.replace(player, "<br /><object height='20' width='455' type='application/x-shockwave-flash' data='http://rghost.ru/flash/mediaplayer.swf' id='preview_mp3' style='visibility: visible;'><param name='flashvars' value='file=http://rghost.ru/download/action/$2/mp3&streamer=http://rghost.ru/download/action/$2/mp3'></object>")); } }); }); //End//+Audio
Поправил
Отредактировано Deff (Чт, 12 Сен 2013 18:07:18)
Не лучше ли заменить перераспарс audio в каждом блоке на такое однократное:
Лучше У меня с оптимизацией проблема...Поправлю...И думаю, что стоит за основу взять лучше вот этот скрипт: Скрипты от пользователей 3 как более универсальный..В связи с этим вопрос, который у меня назрел давно: Возможно ли оптимизировать вот это:
$(data).find('item:lt(50)').slice(0,5).each(function(){ var JAuthor=$(this).find('author').text().slice(14,-1); var JTitle=$(this).find('title').text(); var JLink=$(this).find('link').text(); var JContent=$(this).find('description').text(); //=======ДОБАВКА ==== var JContTXT = $(JContent); var JContIMG = JContTXT.find('img.postimg').remove(); var div =$('<div></div>');JContIMG.appendTo(div); JContIMG = div.html();div.empty(); JContTXT = JContTXT.appendTo(div); JContTXT = div.html() //===End//ДОБАВКА ==== var JPosted=$(this).find('pubDate').text().slice(4,-9); $('#bib1').append('<div class="zag"><table style="width:100%" border="0" cellspacing="0" cellpadding="0"><tr><td class="menucaptionleft"></td><td class="menucaption" style="white-space:nowrap">'+ JTitle +'</td><td class="menucaptionright"></td></tr></table></br></div><table width="100%"><tr><td style="text-align: right;vertical-align: middle;color: #FF1493;">'+ JAuthor +' '+ JPosted +'</br></td></tr></table><table width="100%"><tr><td style="vertical-align: middle; width:5%;"><img src="http://s4.uploads.ru/XTQ9m.gif" /></td><td style="vertical-align: middle; width:75%;"></br>'+ JContIMG +' '+ JContTXT +'</br></td></tr><tr><td class="lin"></td><td class="lin"></br><a href="'+ JLink +'" title="'+JTitle+'">Читать далее »</a></br></br></td></tr></table>'); });
Чтобы не повторять каждый раз такой огромный код для пагинатора? А то 10 таких кодов - это не есть хорошо, но как уменьшить я не знаю..
Отредактировано kolobdur74 (Чт, 12 Сен 2013 18:05:37)
Чтобы не повторять каждый раз такой огромный код для пагинатора? А то 10 таких кодов - это не есть хорошо, но как уменьшить я не знаю..
Наверняка можно, но я не понял пока алгоритм... и признак, что он нужен...
Ибо на текущей странице реально ток 1 страница вывода
Ибо на текущей странице реально ток 1 страница вывода
А, да забыл спросить: При загрузке страницы, как я понимаю загружается сразу все 50 последних постов с rss - это плохо? Количество влияет, или все равно, что 5, что 50? Я имею ввиду в плане запросов.
Вы здесь » Единый форум поддержки » Новые возможности форумов » Создаем полноценный Портал на форумах MyBB!