Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Zwijana tabela "Zwinięta po odświeżeniu rozwinięta"

Założony przez  Supryk.

wersja skryptu MyBB: 1610
adres forum:[/bPolish-Zone.pl juz tylko do testów
[b]na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu):

Jak w temacie
używam na przykład takiego kou

<table border="0" cellspacing="{$theme[\'borderwidth\']}" cellpadding="{$theme[\'tablespace\']}" class="tborder">
<tr>
<td class="thead" colspan="1">
<div class="expcolimage"><img src="{$theme[\'imgdir\']}/collapse{$collapsedimg[\'topStats_Reputation\']}.gif" id="topStats_Reputation_img" class="expander" alt="[-]" title="[-]" /></div>
<div><strong>{$lang->topStats_Top} {$tpl[\'limit\']} {$lang->topStats_Reputation}</strong></div>
</td>
</tr>
</thead>
<tbody style="{$collapsed[\'topStats_Reputation_e\']}" id="topStats_Reputation_e">
</tr>
{$tpl[\'row\']}
<tbody>
</table>
<br />

Zwinięta tabela po odświeżeniu strony jest "otwarta"

Poczytalem i te informacje powinny być zapisywane do ciastek lecz nie wwiem dlaczego tak nie jest :(
No a jak chciałbyś to zrobić bez ciasteczek?:D
<tbody style="{$collapsed[\'topStats_Reputation_e\']}" id="topStats_Reputation_e">
topStats_Reputation_e co to ma być? tu ma być id
wprost z oryginalnego szablonu szybkiej odpowiedzi
<tbody style="{$collapsed['quickreply_e']}" id="quickreply_e">

Więc nie wiem czemu moje id Ci się nie podoba
Sorry źle to ująłem, więc tak, widocznie tego id nie ma w skrypcie js dlatego nie zapamiętuje akcji.
js ciekawe
jaki plik js wedlug ciebie za to odpowiada
o ile się nie mylę to general.js
w tym pliku nic nie ma na ten temat i wątpię czy w innych coś znajdę
Serio? Nie możliwe :P a ja znalazłem, od wiersza 582
Mój błąd przyjacielu zwracam honor, 3 maj plusika
Jednak źe nie ma tam "Twardo" wpisanych ID

Niektórzy mówią ze po wklejeniu takiego kodu jak podelem w 1 posicie wszystko im działa odrazu
Tak jak masz w pierwszym poście będzie tylko chować i pokazywać, musi być takie same id w js żeby zapisać to w ciasteczkach :)
przekopiowałem cały szablon z szybkiej odpowiedz do pluginu i nic

to id nic nie pomogło

Wklejając taki kod bez pośrednio do index, nie przez globalne i zmienna, wszystko działa (z kazdym id)
Wiec potrzebna jest chyba dopiska w php
global.php linia 703
$collapsed = array('boardstats' => '', 'boardstats_e' => '', 'quickreply' => '', 'quickreply_e' => '');
zamień na to
$collapsed = array('twojeid' => '', 'twojeid_e' => '', 'boardstats' => '', 'boardstats_e' => '', 'quickreply' => '', 'quickreply_e' => '');
twojeid posłuży jako id
to nic nie daje

Idą Toim tropem udało mi sie
zostawiam rozwiązanie za innych
do kodu pluginu dodałem

    $colcookie = empty($mybb->cookies['collapsed']) ? false $mybb->cookies['collapsed'];
    
$collapsed = array('serversboard' => '''serversboard_e' => '');
    
$collapsedimg $collapsed;

    if(
$colcookie)
    {
    
$col explode("|"$colcookie);
    if(!
is_array($col))
    {
        
$col[0] = $colcookie// only one item
    
}
    unset(
$collapsed);
    foreach(
$col as $key => $val)
    {
        
$ex $val."_e";
        
$co $val."_c";
        
$collapsed[$co] = "display: show;";
        
$collapsed[$ex] = "display: none;";
        
$collapsedimg[$val] = "_collapsed";
    }
    } 

Dzieki
wynagrodzony
Coś źle zrobiłeś bo u mnie działa
<table class="tborder" border="0" cellpadding="4" cellspacing="1">
<thead>
<tr>
<td class="thead">
<div class="expcolimage"><img style="cursor: pointer;" src="images/collapse.gif" id="twojeid_img" class="expander" alt="[-]" title="[-]"></div>
<div><strong>coś</strong></div>
</td>
</tr>
</thead>
<tbody style="{$collapsed['twojeid_e']}" id="twojeid_e">

<tr><td class="tcat">coś
</td>
</tr>
</tbody>
</table>
Supryk napisał(a):Wklejając taki kod bez pośrednio do index, nie przez globalne i zmienna, wszystko działa (z kazdym id)
Wiec potrzebna jest chyba dopiska w php
Nie zgodzę się z Tobą. Ja używam zwykłego kodu zwijającego tabelkę (i fancyCollapses) i wszystko śmiga idealnie. Tak samo w pluginie jak i w zwykłym kodzie w indexie. (DEMO). A tak wygląda kod jednej z tabelek (w pluginie, dorabiane już po instalacji w szablonie.):
<table border="0" cellspacing="0" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead_sidebar"><span class="forumtitle">Najczęściej czytane</span>
<div class='expcolimage'><img src='images/collapse{$collapsedimg['mostviews']}.gif' id='mostviews_img' style='cursor: pointer;' class='expander' alt='[-]' title='[-]'  width="70%"/></div></td>
</tr>
<tbody id='mostviews_e' style='{$collapsed['mostviews_e']}'>
            {$topstats_mostviews_threads_row}
            </tbody></table>



Użytkownicy przeglądający ten wątek:

1 gości