[ Neznalica_sa_ugla @ 03.04.2012. 23:57 ] @
Ovako , radim stranice i ušemio sam jedan obrazac , čak bio s njime i zadovolja. Da objasnim čemu se radi.
U početnu sranicu stavim naslovni sliku i menu i ništa više . Sve ostalo , što se učitava 'dovučem' ajax-om i prikažem u pripadajućem div-u , isti je slučaj i kada posetilac odabere nešto u meniu , na click , iz jave scripte pokrenem ajax , koji 'dovuče' šta je odabrao. Da objasnim malo ovaj pojam dovuče , praktično ajax-om pročitam odgovarajuću stranicu , i kada mi vrati html -cod ja ga sa innerHTML stavim u odgovarajući div .To m i se činilo dobro , jednostavno, ne učitava se cjela stranica ,nego samo što je odabrao kliet. Di je tu problem??? ,Pa u googlu , on jednostavno indexira samo tu početnu stranicu , i ne 'vidi' one strnice , jer nema fiksnog linka na njih , jer su one dinamičke , preko javescript i ajax-a .Ja sam se nadao da će googlov -bot , vidjeti ove linkove al i on ih ne indexira. Kako sam na ovaj 'kalup' napravio desetak stranica, čini mi se bedasto , od njega odustati. Pokušao sam sa sitemap ,al i nije pomoglo , jer pozivom stranica iz sitemap , nisu se prosljedili parametri , niti upisali cookies , koji su potrebni , recimo sa upite što će biti uzeto iz baze.Kako da google vidi ove linkove ?? Biću zahvalan za bilo kakav predlog .
[ plus_minus @ 04.04.2012. 00:11 ] @
Ne koristi AJAX za bitan sadržaj.

Koristi AJAX za "šmek".

Koristi php ili asp.net ako hoćeš da ti se menjaju samo delovi unutar jedne te iste stranice i da google bot indeksira sve.

Dakle, neki server-side skripting jezik, koji god da je u pitanju.

U source kodu nećeš moći da vidiš izmene.

Videćeš uvek i uvek, samo prvobitno stanje.

Inače, AJAX je izmišljen prvenstveno samo zbog mapa.

Google Maps npr.

Pored tog problema koji si okusio, postoji još jedan.

Ne radi browser back dugme kada koristiš AJAX.

Kada učitaš neki sadržaj ajaxom, to jest, kada "transformišeš" deo stranice pomoću javaskripte tako da korisniku deluje kao da je cela nova stranica učitana i kada korisnik klikne na back dugme u pretraživaču, ne dešava se ništa. Ne postoji "history state".

Za to moraš da dodaš dodatni js framework koji "popravlja" back button/history.
[ Neznalica_sa_ugla @ 04.04.2012. 09:13 ] @
Ok, Ja koristim ,asp.net -c# , ali sve file dovlačim ajax-om , , a kada kažeš da ne koristim , kao da si rekao , ne diši , jednostavn o je takva koncepcija .Imaš drugi predlog. za ovaj drugi problem , mi nije važno ..
[ plus_minus @ 04.04.2012. 10:26 ] @
Neki drugi možda i ima rešenje.

Ja ne.
[ Neznalica_sa_ugla @ 04.04.2012. 21:16 ] @
Ma ti drgi se slabo javljaju ...
[ plus_minus @ 04.04.2012. 22:12 ] @
A jel' se slabo javljaju?

To je zato što sam ti ja (ili google?) rekao da ne dišeš.. :)

Pogledaj po webmaster tools šta sve imaš od opcija.. i da li postoji neki parametar koji možeš da im dostaviš kako bi znali da se radi o više stranica.

Ne znam samo zašto je toliko zanimljivo i bitno da ne bude page refresh svaki put...

Izbaci ajax tamo gde ne moraš da ga koristiš, ako već koristiš asp.net... ako imaš bitan a "nevidljiv" sadržaj i to je to.


edit:

Jedno od možda zanimljivih rešenja jeste da te deliće koje uvlačiš ajaxom odradiš da se smenjuju na "onmouseover" ... dakle, smenjivanje sadržaja na mouse over..

href da ima i target="_blank" i onda, pozivom na link, korisnik da dobije samo tekst koji je bitan u novom prozoru.

U tom slučaju, biće indeksirano i vidljivo u pretrazi.


[Ovu poruku je menjao plus_minus dana 04.04.2012. u 23:23 GMT+1]
[ plus_minus @ 04.04.2012. 22:34 ] @
U principu, ne moraš ni novi prozor, već napraviš da se na klik zaista dobije stranica. Ne ajax nego url request. Znači, napraviš sajt da radi BEZ javaskripte u kompletu. Da bude funkcionalan i onda kada neka ludaja isključi javaskriptu iz pretraživača iz sigurnosno-skeptičnih razloga..

A posle, ako ti se baš toliko sviđaju ajax fore itd, samo pridodaš onmouseover event.. i koristiš istu tehniku koju i sad koristiš.. i dopišeš negde u uglu gde ti zgodno, da korisnici znaju da ti je sajt - dvosmeran, napiši šta god ti padne na pamet...

npr: "Just hover over links and the pages will flourish! "

Onda ćeš korisnicima servirati jako ugodan doživljaj, navigacija koja radi bez klikova, interesting.. :))) a bot će da vidi sve kako treba.

I logično, onaj ko klikne, dobije pravu stranicu sa sve opisom, ključnim rečima, itd.
[ Neznalica_sa_ugla @ 05.04.2012. 11:37 ] @
Ovo mi se već sviđa ,Pročitao sam par puta text , ali još imami nejasnoća.Ako budem imao dodatni pitanja , javim se ... Trebam biti pažljiv ako uđem u promjenu desetak stranica da dobro znam što radim
Svakako Hvala .. .
[ plus_minus @ 05.04.2012. 11:48 ] @
Nema na čemu.

Recimo da ti linkovi izgledaju ovako.. ajax linkovi..

Code (html):


<a href="#" onclick="javascript:ajaxupdate('/folder/scrap_piece1.html', 'dynamic_div');">Link text1</a>

<a href="#" onclick="javascript:ajaxupdate('/folder/scrap_piece2.html', 'dynamic_div');">Link text2</a>

<a href="#" onclick="javascript:ajaxupdate('/folder/scrap_piece3.html', 'dynamic_div');">Link text3</a>

 


Nebitno je dal' ti u sami href pomoću neke jQuery metode ( ili slično tome ) pozivaš ajax ili ovako kao što je gore..
Ti to preradš da bude nalik ovome..

(primer je sa statičnim html-om, bez obzira što koristiš asp.net)

Code (html):


<a href="real_page1.html" onmouseover="javascript:ajaxupdate('/folder/scrap_piece1.html', 'dynamic_div');">Link text 1</a>

<a href="real_page2.html" onmouseover="javascript:ajaxupdate('/folder/scrap_piece2.html', 'dynamic_div');">Link text 2</a>

<a href="real_page3.html" onmouseover="javascript:ajaxupdate('/folder/scrap_piece3.html', 'dynamic_div');">Link text 3</a>

 


Nadam se da je sada malo jasniji moj predlog. :)

______

EDIT: U slučaju da ti je jedna od "stranica" koje uvlačiš ajaxom veća od recimo..... 10kb... to može opet da bude mali problem ako ideš na hover (onmouseover) varijantu. Problem će se roditi kod onih koji koriste dial-up. Dakle, sporije konekcije neće odmah, mišem preko linka dobiti sadržinu već će malo da čekaju.... i onda posle par sekundi - promena. Mada, ako ti je sadržina teksta uopšte delića koji uvlačiš ne veća od 5kb.. nikakav problem.

[Ovu poruku je menjao plus_minus dana 05.04.2012. u 13:00 GMT+1]
[ Neznalica_sa_ugla @ 05.04.2012. 21:41 ] @
Hvala ali kod mene nije tako jednostavno .Nažalos!!
Code:

                    string pr = drMenu[text_oznaka].ToString();
                    string rb = "";
                    string adres = "javascript:dio_stranice('" + drMenu["adres"].ToString() + "','tab1');";
                    adres = adres.Trim();
                    red = red + 1;
                    rb = red.ToString();
                    string icon = "";
                    if (drMenu["icon"].ToString().Length > 4)
                    {
                     icon ="slike/"+ drMenu["icon"].ToString(); ;
                    }        
                    MenuItem dodatak = new MenuItem(pr, rb, icon, adres, null);
                   
    ..........

                 Menu1.Items.Add(dodatak);


a sami izvrsni kod
Code:

<a class="Menu1_1 menuItem Menu1_3" href="javascript:dio_stranice('File_00.aspx','tab1');" style="border-style:none;font-size:1em;">
 <img src="slike/sl_menu1.png" alt="menu_Pocetna" style="border-style:none;vertical-align:middle;" />Početna   </a>


Ja iz baze vadim izbornik i sličicu koja će ići u sami izbornk.Problem je u ovome 4 (četvrtom) parametru adres .Što god stavim u njega sama MenuItem ispred stavi <a href=adres > .. /<a> i tu nikako ne mogu odvojiti onmouseover da se vidi i da se može izvršiti. Drugi je problem kada bi i uspio , što klikom na tu stranicu bi bio učitan u novi prozor i tekst bi ostao bez stila , jer je file sa stilovima uključena sami u prvu , ne druge file . Tek kada html text bude stavljen u div poprimi stil.
no , reci mi što misliš o ovome .. na dnu gleve file stavim sljepe linkove:
Code:

<a href="File_00.aspx"></a> 
<a href="File_01.aspx"></a> 
<a href="File_02.aspx"></a> 

..... 




Ovo posetilac ne bi video , mogao bi ga i turiti negde ispod neke slike , a kako bi na to reagirao google-bot ??



[ plus_minus @ 18.04.2012. 19:37 ] @
Nisam bio u mogućnosti da ti odgovorim prethodnih par dana.

To što je kod tebe drugačije, moraš da rešiš u samom ss kodu. Ja ne radim u asp.net-u pa ti ne mogu baš pomoći, ali mislim da bi trebao da izmenjaš ovu liniju:

Code (asp):


string adres = "javascript:dio_stranice('" + drMenu["adres"].ToString() + "','tab1');";

 


i verovatno još par da bi dobio to što hoćeš.

Ili da probaš da pre

Code (asp):

string adres="javascript:dio_stranice('" .....
 


... ubaciš sami href.
npr .. (lupam)

Code (asp):


string adres="File_00.aspx\" onmouseover=\"javascript:dio_stranice('"....

 


Probaj ... vidi ako nisi ništa učinio do sad po tom pitanju, jer je prošlo već 2 nedelje.

Google bot ne bi trebalo da pravi probleme oko dodavanja nevidljivih linkova, jer to i jeste praksa kada se radi o npr. čistom fleš sajtu ako sajt mora da bude indeksiran.
[ Neznalica_sa_ugla @ 27.04.2012. 22:13 ] @
Hvala na odgovoru , nisam n i ja gledao duže vreme , jer , sam upravo stavi o 'nevidljivi ' link , čin io m i se da će proće . Ujkolik o ne bude valjalo , onda ćem o ponovo mozgato .Još jednom hvala...
[ plus_minus @ 27.04.2012. 22:22 ] @
Nema na čemu.