News - Features - Downloads - Forum - Team - Support - Switch View: Screen
Login - Registrierung - Passwort vergessen

Antworten: 16
Seite [1]
SlayR ClanSphere Team


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Thema - 05.08.2011 um 15:52 Uhr
Hi Leute, vielleicht kann mir jemand weiterhelfen...
Ich habe meine news_recent umgebaut, so das ich die für mich wichtigsten Informationen auf der "Startseite" meiner Site habe. Natürlich ist von dem Umbau auch die recent.tpl betroffen.
Ursprünglich waren meine navboxen (genau da habe ich mein jscript Problem) in die index.htm integriert, jetzt sind sie (gewollt) in die recent.tpl gewandert.
Innerhalb der navboxes nutze ich zum Teil javascript, etwa den coda-slider, das multislide-modul, den youtube viewer und weitere.
Auf meiner Seite ist AJAX aktiv.
Nun habe ich das Problem, das beim 1. Seitenaufruf alle jscripts funktionieren, rufe ich dann die news_recent ein 2. Mal auf, werden offensichtlich die jscripts nicht mehr ausgeführt.
Hat jemand nen Tip, wie ich bei jedem Aufruf der recent.tpl die jscripts neustarten kann?


------------------
--- CLANSPHERE ---
Professional clan care starts here
Inaktiv
sgraewe ClanSphere Team

Supporter
Supporter




Beiträge: 6116
# Antwort: 1 - 05.08.2011 um 16:57 Uhr
bindest du dich sachen komplett ein oder per platzhalter?
wenn per platzhalter, versuch es mal mit |noajax


Inaktiv
|
palle ClanSphere Team

Supporter
Supporter




Beiträge: 3073
# Antwort: 2 - 05.08.2011 um 17:19 Uhr
Wichtig ist das alle Links die klasse noajax erhalten.


------------------
I like the part where it says 'nyan'



Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 3 - 05.08.2011 um 19:52 Uhr
Und eben das funktioniert nicht (noajax-Klasse). Ich kenne den Trick ja auch. Kann es sein, das es daran liegt, das diese scripts innerhalb eines durch AJAX nachgeladenen Elements aufgerufen werden? Ich hab' bei google da auch schon einige Hinweise gefunden, werde jedoch nicht wirklich schlau draus.
z.B. hier:
http://board.raidrush.ws/showthread.php?t=504485
http://www.flashforum.de/forum/javascript-jquery/ajax-javascript-im-aktualisiert en-div-ausfuehren-278979.html
http://www.traum-projekt.com/forum/101-javascript-and-ajax/124915-per-ajax-erzeu gter-content-erneut.html


------------------
--- CLANSPHERE ---
Professional clan care starts here


Inaktiv
|
palle ClanSphere Team

Supporter
Supporter




Beiträge: 3073
# Antwort: 4 - 06.08.2011 um 00:32 Uhr
Naja ich mein du bist lang genug dabei um zu wissen das wenn man etwas Logik "postet" mehr dazu sagen kann.
Aber was ich dazu sagen kann ist das der Coda-Slider mit aktiviertem Ajax läuft... da ich es gerade getestet hab.

Und wir beide meinen auch das gleiche noajax? Ich spreche nicht vom Platzhalter Attribut.

Gruß


------------------
I like the part where it says 'nyan'



Zuletzt editiert von palle ClanSphere Team am 06.08.2011 um 00:33 Uhr (1x Editiert)
Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 5 - 06.08.2011 um 10:09 Uhr
Ich gehe davon aus, das wir vom selben noajax sprechen. Prinzipiell läuft der Coda ja auch mit AJAX, jedoch (zumindest bei mir nicht) innerhalb des von AJAX aktualisierten contents!
Ich gehe mal davon aus (korrigiert mich bitte wenn ich falsch liege) das von Clansphere eine id "csp_content" erzeugt wird, die den von AJAX zu aktualisierenden Content enthält. Genau darin liegt auch der Coda-Slider & Co. Das einzige, ebenfalls jscript nutzende Modul was innerhalb des AJAX-Contents liegt, ist der YouTube-Viewer.

Ich hab AJAX jetzt wieder an, auf www.ths-germany.de damit sich jeder selbst ein Bild machen kann.

Um etwas mehr "Logik" zu posten, hier der wichtigste Auszug aus der index.htm:
mehr... +-
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
1. / 2. / ... 
 <body>
    
    <
div id="main"
    <!--[if 
lt IE 9]>
    <
script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <
span style="border: 1px solid #000; background: #ccc; width: 1000px; height: 30px;">You are using an older Version of Internet ExplorerCompatibilty Mode of the Site was enabled</span>
    <![endif]-->
        <
header>
            <
div id="login_bar">{users:navlogin}</div>
            
            <
ul class="subnavigation" id="subnavi_1" style="display: block;">
            <
li><a href="{url:news_recent}" class="wlink">Startseite</a></li>
            <
li><a href="{url:gbook}" class="wlink">Gbook</a></li>
            <
li><a href="{url:board}" class="wlink">Forum</a></li>
            <
li><a href="{url:articles}" class="wlink">Artikel</a></li>
            <
li><a href="http://www.ths-germany.de/bc2leaderboard" target="_blank" class="wlink">Stats</a></li>
            <
li><a href="{url:linkus_list}" class="wlink">LinkUs</a></li>
            <
li><a href="{url:cups}" class="wlink">Cups</a></li>
            <
li><a href="{url:bets}" class="wlink">Wetten</a></li>
            <
li><a href="{url:cash_view_cash}" class="wlink">Kasse</a></li>
            </
ul>        
            
            <
ul class="subnavigation" id="subnavi_2" style="display: none;">
            <
li><a href="{url:members_pictured}" class="wlink">Members</a></li>
            <
li><a href="{url:rules_list}" class="wlink">Regeln</a></li>
            <
li><a href="{url:history_list}" class="wlink">History</a></li>
            <
li><a href="{url:wars_list}" class="wlink">Clanwars</a></li>
            <
li><a href="{url:awards_list}" class="wlink">Awards</a></li>
            <
li><a href="{url:fightus_new}" class="wlink">Fight Us</a></li>
            <
li><a href="{url:joinus_new}" class="wlink">Join Us</a></li>
            <
li><a href="http://www.ths-germany.de/bc2leaderboard">Leaderboard</a></li>
           </
ul>    
           
           <
ul class="subnavigation" id="subnavi_3" style="display: none;">
            <
li><a href="{url:servers}" class="wlink">Server</a></li>
            <
li><a href="{url:shop}" class="wlink">Shop</a></li>
            <
li><a href="{url:users}" class="wlink">Community</a></li>
            <
li><a href="{url:events_agenda}" class="wlink">Events</a></li>
            <
li><a href="{url:votes}" class="wlink">Umfragen</a></li>
            <
li><a href="{url:partner}" class="wlink">Partner</a></li>
            <
li><a href="{url:users_register}" class="wlink">Register</a></li>
            <
li><a href="{url:users_sendpw}" class="wlink">Send PW</a></li>
           </
ul>    
           
           <
ul class="subnavigation" id="subnavi_4" style="display: none;">
            <
li><a href="{url:gallery_list}" class="wlink">Galerie</a></li>
            <
li><a href="{url:files}" class="wlink">Downloads</a></li>
            <
li><a href="{url:links}" class="wlink">Links</a></li>
            <
li><a href="{url:ytviewer_list_gallery}" class="wlink">Videos</a></li>
           </
ul>
        </
header>
        
            <
nav class="noajax">            
                <
ul id="navigation">
                <
li class="aktiv" id="aNews"><a href="{url:news_recent}" class="news noajax" onclick="menu(1);"></a></li>
                <
li id="aGaming"><a href="{url:members_teams}" class="gaming" onclick="menu(2);"></a></li>
                <
li id="aMedia"><a href="{url:users}" class="media" onclick="menu(3);"></a></li>
                <
li id="aComm"><a href="{url:gallery_list}" class="community" onclick="menu(4);"></a></li>
                </
ul>
            </
nav>
                
            <
section id="content">
                {
func:show}
            </
section>

hier noch die news/recent.tpl:
mehr... +-
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
1. / 2. / ... 
 <section id="links">
    <
div id="specialbox noajax">{multislide:navslide|noajax}</div>
    <
section class="main_cnt">
    {
loop:news}
    <
div style="float:left;padding:{news:padding};width:322px;">
        <
table>
            <
tr>
                <
td style="padding:0">
                    {if:
catimg}
                    <
a href="{url:news_view:id={news:news_id}}"><img src="{page:path}{news:url_catimg}" alt="{news:news_headline}" /></a>{stop:catimg}
                </
td>
            </
tr>
            <
tr>
                <
td class="more" style="padding:0">
                    <
div class="newsheadline">{news:news_headline_short}</div><a href="{url:news_view:id={news:news_id}}" class="readmore">{lang:readmore_go}</a></td>
            </
tr>
            <
tr>
                <
td style="text-align:justify;float:left;height:100px;width:320px;overflow:auto;padding:0;">
                    {
news:news_readmore}
                    {
news:news_text}
                    {if:
readmore}
                    {
stop:readmore}        
                </
td>
            </
tr>
            <
tr>
                <
td class="bottom" style="padding:0">
                    <
div style="float:left;">{news:news_time}</div>
                    <
div style="float:right;">{news:comments_link} ({news:comments_count})</div>
                </
td>
            </
tr>
            {if:
show}
                <
tr>
                    <
td class="leftb" style="padding:0">
                        {
loop:mirror}{stop:mirror}
                    </
td>
                </
tr>
            {
stop:show}
        </
table>
    </
div>
    {
stop:news}
    <
a href="{url:news_feed}" class="noajax">News Feed</a>
    <
br />
    <
div id="content2">
        <
div id="morenews"><div id="morenewsline">{news:navlist}</div></div>
        <
div id="morethreads"><div id="morethreadsline">{board:navlist}</div></div>
        <
div style="padding-top:170px;"><div id="randomgallery"><div id="randomgalleryline">{gallery:navlist2}</div></div></div>
        <
div style="padding-top:130px;"><div id="randomgalleryend"></div></div>
    </
div>
    </
section>
</
section>
                
<
aside id="rechts" class="noajax"
    <
div class="sideright noajax">
        <
div id="coda-nav-1" class="navhead noajax">            
            <
a href="#1" class="schrift noajax">BC-A</a>
                <
a href="#2" class="schrift">BC-B</a>
                <
a href="#3" class="schrift">INS</a>
                <
a href="#4" class="schrift">Topmatch</a>                
        </
div>      
        <
div class="navbody">
            <
div class="coda-slider preload noajax" id="coda-slider-1">       
                <
div class="panel noajax">
                    <
div class="panel-wrapper noajax">{wars:navlist2:squadid=34}</div>
                </
div>           
                <
div class="panel noajax">
                    <
div class="panel-wrapper noajax">{wars:navlist2:squadid=41}</div>             
                </
div>
                <
div class="panel noajax">
                    <
div class="panel-wrapper noajax">{wars:navlist2:squadid=45}</div>
                </
div>
                <
div class="panel noajax">
                    <
div class="panel-wrapper noajax">{wars:navtop}</div>             
                </
div>           
            </
div>        
        </
div>  
    </
div>
    <
div class="boxend2"></div>
    
    <
div id="movies"></div>
    <
div class="boxline">{ytviewer:navrandvid:text=no|noajax}</div>
    <
div class="boxend2"></div>
                    
    <
div id="advert"></div>
    <
div class="boxline noajax" style="text-align:center">
        <
script type="text/javascript">
        <!--
        
google_ad_client "ca-pub-***********";
        
/* THS-Adsense */
        
google_ad_slot "***********";
        
google_ad_width 300;
        
google_ad_height 250;
        
//-->
        
</script>
        <
script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>    
    </
div>
    <
div class="boxend2"></div>
                    
    <
div id="training"></div>
    <
div class="boxline">{training:navlist}</div>
    <
div class="boxend2"></div>
                    
    <
div id="kalender"></div>
    <
div class="boxline">{events:navcal}</div>
    <
div class="boxend2"></div>
                    
    <
div id="shoutbox"></div>
    <
div class="boxline">{shoutbox:navlist}</div>
    <
div class="boxend2"></div>
                    
    <
div id="jobs"></div>
    <
div class="boxline">{jobs:navlist}</div>
    <
div class="boxend2"></div>
                    
</
aside>

die news/recent.php wurde um ",1" in der echo-Zeile erweitert um auch "Fremdmodule" aufzurufen.


------------------
--- CLANSPHERE ---
Professional clan care starts here


Zuletzt editiert von SlayR ClanSphere Team am 06.08.2011 um 10:12 Uhr (2x Editiert)
Inaktiv
|
sgraewe ClanSphere Team

Supporter
Supporter




Beiträge: 6116
# Antwort: 6 - 06.08.2011 um 10:50 Uhr
du musst den links des codasliders die class="noajax" geben,
das es alles ohne probleme geht, weis ich zu 100%,
da wir das schon in mehreren anpassungen zum laufen bekommen haben


Inaktiv
|
palle ClanSphere Team

Supporter
Supporter




Beiträge: 3073
# Antwort: 7 - 06.08.2011 um 12:14 Uhr
Wichtig ist das alle Links die klasse noajax erhalten.
Das fehlt doch komplett bei dir.


------------------
I like the part where it says 'nyan'



Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 8 - 06.08.2011 um 12:21 Uhr
Wichtig ist das alle Links die klasse noajax erhalten.

Lieb gemeinter Tip, palle. habe ich auch bereits durch, ohne Besserung. im Gegenteil, das jscript, das die Hauptnavigation aktiv hält, lief nicht mehr.
es geht ja nicht um den Aufruf einer separaten index.php samt separater index.htm, sowas wie board.htm ist ja garnicht Ziel des ganzen. Da würde es mit der "noajax-Klasse" janz sicher laufen. wie gesagt, ich wundere mich, das jscript nicht in einer "tpl-verschachtelung" läuft. Im grunde lädt ja meine recent.tpl die navlist-tpl's nach. und da scheints im Zusammenhang mit AJAX und jscript eben zu hapern.

Habe das ganze auch mal auf die schnelle mit 'ner frischen Installation versucht, multislide-Modul drauf, in die news/recent.tpl eingebaut, die news/recent.php erweitert (,1 für "fremdmodule") und habe genau den selben effekt. Sobald ich AJAX aktiviere werden die integrierten jscripts nicht mehr ausgeführt.


------------------
--- CLANSPHERE ---
Professional clan care starts here


Zuletzt editiert von SlayR ClanSphere Team am 06.08.2011 um 13:20 Uhr (1x Editiert)
Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 9 - 07.08.2011 um 16:14 Uhr
Okay (oder auch nicht) ich hab' da etwas rausgefunden. Um jscripts in nachgeladenem AJAX-Content laufen zu lassen, müsste man sehr wahrscheinlich die AJAX-Komponente von Clansphere umschreiben. Mir ist das etwas zu weit, und zu hoch . Ich behelfe mir nun mit unterschiedlichen htm's auch wenn mir das "doppelte" Laden vom Content nicht gerade schmeckt.

Da ich an dieser Stelle wohl nicht weiterkomme, mache ich hier mal zu.


------------------
--- CLANSPHERE ---
Professional clan care starts here


Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 10 - 11.08.2011 um 13:10 Uhr
Ich kanns einfach nicht sein lassen
Es muss doch möglich sein, so ein wenig jscript zu laufen zu bekommen. Um mal visuell zu erklären wo mein Problem ist habe ich mal 'ne skizze gepinselt:

Es ist mir um's verrecken nicht möglich, innerhalb dieser wars/navlist jscript zu starten zu bekommen.
Also, wie gesagt, news_recent angepasst. Darin wars/navlist eingebettet. Wars Navlist ist auch abgeändert (coda-slider zeigt einzelne wars-kategorien an). Vore einem AJAX-Reload (Seite frisch aufgerufen) läuft der coda-slider 1a, nach wiederkehr, von z.b. board oder gallerie oder was auch immer, auf die news/recent läuft der eben nicht mehr.
Meine Version ist die 2011.2
AJAX ist aktiv
mod_rewrite ist aktiv.
Ich habe bereits versucht, die Klasse "noajax" sowohl den Links, oder den Navlists, aber auch links und Navlists zuzuweisen. Leider Ohne erfolg.


------------------
--- CLANSPHERE ---
Professional clan care starts here


Inaktiv
|
SCHIRI ClanSphere Team


Weltmeister



Herkunft: Hamburg
Beiträge: 5299
# Antwort: 11 - 11.08.2011 um 16:24 Uhr
zwei probleme:

1. Wenn Ajax nicht aktiviert ist, wird jQuery erst bei der unteren Kante des blauen bereichs geladen, kann also im orangenen bereich nicht benutzt werden.

2. Wenn Ajax aktiviert ist, wird der rote bereich und alles darin bei jedem aufruf der news/recent neu geladen. das javascript im orangenen bereich wird also auch jedes mal neu ausgeführt. Im prinzip ist das auch gut. Wenn aber dein Javascript irgendetwas globales macht (globale variablen oder irgendwelche speziellen events bindet oder so) dann gibt es chaos. Ich hab den Thread jetzt noch nicht ganz gelesen, aber wenn du z.B. per Javascript einen Div erzeugst, den du am ende des bodys (des blauen bereiches) einfügst, dann bleibt der ja da auch wenn man die news-seite verlässt und wenn man die news noch mal aufruft wird er wieder eingefügt und so weiter und so etwas kann zu fehlern führen.

wenn du plugins benutzt ist natürlich nicht sofort erkennbar was die alles machen, was mit ajax kollidiert.
jquery-plugin-js-dateien solltest du grundsätzlich im <head> oder am ende des <body> vom Template einbinden und niemals direkt an der stelle wo sie benutzt werden sollen.

Ausserdem darfst du dich bei Ajax nicht auf das domready oder onload event ( bzw $(function(){ ... &#125 ) verlassen, weil alles was daran gebunden ist nur ein einziges mal ausgeführt wird. schau mal in die clansphere.js dort wird irgendwo das csAjaxLoad Event (oder so ähnlich) benutzt. das ist der einzige weg wie soetwas funktioniert.


------------------
www.laszlokorte.de

Zuletzt editiert von SCHIRI ClanSphere Team am 11.08.2011 um 16:28 Uhr (1x Editiert)
Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 12 - 11.08.2011 um 18:47 Uhr
Danke, Schiri,
onload
ist genau das Problem, denke ich jedenfalls. Der Coda wird z.B. durchs onload event aktiv, genau wie das Multislide-Pro Modul von X-Ray. Das erklärt natürlich so einiges. Ich werd' mir mal die clansphere.js ansehen, ob ich damit was zaubern kann.
Auf jeden Fall hast Du mich auf die richtige Spur gebracht.


------------------
--- CLANSPHERE ---
Professional clan care starts here


Inaktiv
|
Mindcrime


Geekboy





Beiträge: 1155
# Antwort: 13 - 12.08.2011 um 00:31 Uhr
Ohne verbesserungen/anpassungen an multislide kannst das eh nicht loesen... Das prob mit jquery, multislide und noch ein anderes javascript was auch jquery benutzt hab ich auch schon gehabt...


Inaktiv
|
SlayR ClanSphere Team
Thread-Ersteller


Geekboy




Herkunft: Calbe (Saale)
Beiträge: 1133
# Antwort: 14 - 12.08.2011 um 08:16 Uhr
Na dann werde ich's mal mit 'nem ganz anderen Lösungsansatz versuchen. Primär ging es mir darum, ausgewählte Navigationstabs aktiv zu halten. Ich habe dazu gestern Abend nochmal einen alten Thread gefunden, der sich mit damit auseinandersetzt. Schade eigentlich das AJAX solchen Ärger macht, unter anderem hebt ja AJAX Clansphere von anderen CMS ab. Ich werde dann im Endeffekt auf AJAX verzichten müssen.


------------------
--- CLANSPHERE ---
Professional clan care starts here


Zuletzt editiert von SlayR ClanSphere Team am 12.08.2011 um 08:17 Uhr (1x Editiert)
Inaktiv
|
rodlov


Rock the board




Herkunft: Berlin
Beiträge: 43
# Antwort: 15 - 12.08.2011 um 11:54 Uhr
dazu hab ich mich auch entschlossen.


------------------
Wen du nicht mit Können beeindrucken kannst, den verwirre mit Schwachsinn!

Inaktiv
|
SCHIRI ClanSphere Team


Weltmeister



Herkunft: Hamburg
Beiträge: 5299
# Antwort: 16 - 12.08.2011 um 14:29 Uhr
Wie ich schon in einem anderen Thread erklärt habe, hatten Micha und ich Ajax damals implementiert als in den Browsern noch sehr zentrale Technologien (z.B. per Javascript in die Browser-History schreiben und die URL ändern zu können, ohne die Seite neu zu laden) fehlten. Es war also möglich es besser umzusetzen als es jetzt ist.

Inzwischen, wenn alle Browser mit html5 auch einige neue Javascript-Features erhalten haben, könnte man das ganze an einigen Stellen viel sauberer lösen. Dafür müsste aber Zeit ins Umschreiben/Neuschreiben investiert werden, die ich grade nicht aufbringen kann.

Falls jemand von euch (an die Community) sich mit Javascript, jQuery und der gesamten Materie auskennt, kann er sich ja gerne daran versuchen. Im Prinzip muss nur die ajax.js angefasst werden.


------------------
www.laszlokorte.de

Inaktiv
|
Antworten: 16
Seite [1]


Sie müssen sich registrieren, um zu antworten.


ClanSphere Project - Mailus - Imprint - Disclaimer - Scriptinfo