WebSite X5Help Center

 
Francesco M.
Francesco M.
User

Collegamento ancora ai singoli blocchi testo dell'oggetto accordion/text faq  it

Autor: Francesco M.
Visitado 1054, Seguidores 2, Compartilhado 0  

Buongiorno a tutti.
E' possibile inserire delle ancore (link) ad ogni singola voce del titolo dell'oggetto accordion text?
Ho  creato  un  elenco  con  oltre  100  canti,  ed  avrei  bisogno,  dato  un  elenco  alfabetico,  che  alla  pressione  sul titolo  del  canto  mi  porti  all'apertura  del  blocco  di  testo  all'interno  dell'accordion  TEXT/Faq.

Non so se è possibile,

Ho provato ad inserire vicino al titolo <a id="canto50"></a>

e al canto dato il link #canto50

ma non mi funziona...

Esiste qualche soluzione?

Grazie

Publicado em
29 RESPOSTAS - 4 ÚTEIS - 1 CORRIGIR
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... di base gli ancoraggi vanno usati per gli scopi storicamente prefissati...
... per altri eventi al di fuori della norma occorrerà condizionare le azioni quando possibile con codice EXTRA...
.... per approfondimenti ed altre idee vedere anche qui:
https://helpcenter.websitex5.com/pt/post/250700

.

ciao

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Ti ringrazio per la risposta, ma io cercavo la soluzione al contrario. In effetti vorrei inserire le ancore sui titoli o sull'inizio del testo dei singoli blocchi di testo, e poi, da un elenco testuale o a griglia, dove ho l'elenco alfabetico, cliccare sul numero o titole e posizionarsi sul blocco scelto o almeno all'inizio dell'accordion text/faq.
Non so se con qualche codice sarebbe possibile
Il  link  della  pagina è www.collegiatamarigliano.it/canti.html

Ho provato alcuni canti, anche al canto 50 (inizia con la h) che dovrebbe essere centrale

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... x Francesco, ...ho visionato il tuo LINK, ed ho notato che non hai posizionato le Ancore ed i relativi Ancoraggi...
... rimetterci le mani adesso, ora come ora a cose già fatte, ne verrebbe fuori un lavoro impegnativo con gli strumenti del programma, e forse con un poco di tempo in meno piazzando le Ancore manualmente, ma sempre impegnativo rimane;... diversi giorni con tutti i controlli da verificare...
... e poi a grandi linee secondo me andrebbe comunque integrato una variante del mio esclusivo SuperCodice che hai visto nel Topic che ti ho indicato prima...
...
... ad occhio e croce, e codice per codice EXTRA, posso immaginare e quindi valutare in base alle precedenti ed esclusive esperienze nel Forum, che con i miei SuperCodici per le Ancore e gli Ancoraggi da terza pagina, potresti risolvere in due secondi, con due soli e semplici copia/incolla, ...quasi una magia...
... quello che si potrebbe ottenere con i miei SuperCodici sarebbe l'assegnazione dinamica automatica delle Ancore nella pagina Accordion "canti.html", ... ed anche l'assegnazione dinamica automatica di tutti gli Ancoraggi nella pagina "elenco-alfabetico-canti.html"...
...
... se ti interessa, e se ti interessa procedere in questo senso nel breve, e se te la senti di affrontare questo mondo EXTRA, ...avvisami, ed io ritornerò qui, ... altrimenti come non detto, fa niente, ed ignora il mio Post...

.

ciao
.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Gentissimo KolAsim, è vero le ancore non le ho ancora inserite perchè stavo provando e non riuscivo. 
Sono comunque pronto ad imparare sempre cose nuove ed EXTRA..
Se  spiegarmi  come  affrontare   la  situazione  sono  pronto  a questa  nuova  sfida.
Tieni  presente  che  per  tempo,  momentaneamente,  non  riuscirò  a leggere  le  tue  risposte  immediatamente,  ma  con  qualche  giorno  di  ritardo.  Grazie  per  il  tuo  fattivo  interessamento  ed  aiuto

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... OK ...preso a ferro caldo potresti risolvere anche  immediatamente...
... ricontrollo la situazione generale per qualche eventuale ritocco dedicato alla tua struttura e ritorno dopo...

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... assegna gli ancoraggi alla colonna dei numeri...

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... codice per le proprietà /HEAD della pagina  "elenco-alfabetico-canti.html":

<script>
$("document").ready(function() { //K>;
/** -- assegnazione dinamica Ancore - by KolAsim -- **/
ritardoK= 3; // = secondi di ritardo
setTimeout(function() { //K1>;
nrK =$( "#imTableObject_57_03_tab0 .cf1" );
for(var i = 0, TotK = nrK.length; i < TotK; i++){//K2>;
linkK="canti.html#" + $(nrK[i]).text() ;
cantoK=$(nrK[i]).text();
$(nrK[i]).wrap('<a href="'+linkK+'" style="text-decoration:none" title="leggi il canto '+cantoK+'"></a>')
} //K2<<;
//alert(TotK);
},ritardoK * 1000);//K1<<;
}) //K<<;
</script>

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... avvisami quando avrai aggiornato online per poter verificare...
... se sarà regolare poi si passerà al passaggio successivo per il codice che assegnerà le Ancore nella pagina "canti.html"...

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Ho aggiornato il sito con il codice che mi hai postato.

Ho provato anche ad in serire al primo canto <a href="#canto1"></a> 

ed al canto 61 <a href="#canto61"></a> 

ed ovviamente non funziona.
Aspetto tue indicazioni. 

Grazie ancora per il tuo interessamento

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... OK ... ho controllato, ...gli Ancoraggi vendono correttamente assegnati e rispondono bene...
... non ci avevo pensato prima, ma se ti interessano gli Ancoraggi anche alla colonna del testo, si possono facilmente assegnare anche a questi con un piccola modifica al codice; ... nel caso avvisami per fare questa modifica...

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... ...riguardo al codice del tuo tag <a>, essendo che gli Ancoraggi assegnati dal mio codice sono solo numerici(*) e che il il valore dell'Ancora va dichiarata nell'attributo "ID", di conseguenza in questo caso il codice dell'Ancora dovrebbe essere così:
<a id="61"></a>

(*) - se invece li vuoi in formato alfanumerico, per esempio canto61, avvisami...

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... praticamente per ora per il primo passo sei a posto, ...salvo nel caso di applicare le modifiche accennate prima, sempre con un copia/incolla che sai già fare..

... adesso ricontrollo la situazione della pagina canti.html  ... e poi ritorno qui per il secondo passo...

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... OK ... secondo passo...

... codice per le proprietà della pagina canti.html ...came fatto in precedenza :
-----------------------
<script>
$("document").ready(function() { //K>;
/** -- Ancoraggio dinamico ritardato da terza pagina - by KolAsim -- **/
/** -- Assegnaziona Ancore dinamica - by KolAsim -- **/
ritardoK= 3; // = secondi di ritardo
setTimeout(function() { //K1>;
anchorK = window.location.hash;
coll_ancoraK = anchorK ;
controlloK1()
},ritardoK * 1000);//K1<<;
return
}) //K<<;
//---------------f K2 (3,4,5)---------
function controlloK1() {//K2>;
$(".opened").click();
K = $( ".accordion_title_text" );
nK = 0;
setTimeout(function() {//K3>;
for(var i = 0, TotK = K.length; i < TotK; i++){//K4>;
nK += 1
k = $(K[i]).text();
$(K[i]).parent().parent().prepend('<a id= "'+nK+'"></a>');
setTimeout(function(){ //K5>;
x5engine.utils.location(anchorK, null, false);
}, 1000); //K5<<;
}//K4<<;
offsetK();
}, 1000); //K3<<;
} //K2<<;
//---------------f K6 (6,7,8)---------
function offsetK() { //K6>;
$(coll_ancoraK).click()
setTimeout(function(){ //K7>;
hK=$("#imStickyBarObjects").height();
scrollK=$(window).scrollTop();
scrollK=scrollK-hK;
$('html,body').animate({ //K8>;
scrollTop: scrollK
}, 400);//K8<<;
}, 1000);//K7<<;
} //K6<<;
</script>

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Ciao KolAsim. Ancora ti rigrazio per la prima magia che con poche righe di codice mi crea tutti i numeri con collegamento.
Adesso ho incollato il tuo secondo codice, ma già stranamente non mi evidenzia le varea funzioni colorate (commenti in verde, variabili etc. ) 
e  una  volta  pubblicato  mi  riporta  lo  script  in  alto.
Ti  allego  le  immagini  dell'inserimento  dei  due  script,  dove  si  evidenzia  che  il  primo  è evidanziato  con  tutti  i colori,  mentre  il  secondo  no.

Ler mais
Publicado em de Francesco M.
Francesco M.
Francesco M.
User
Autor

seconda immagine

Ler mais
Publicado em de Francesco M.
Francesco M.
Francesco M.
User
Autor

Scusa  ancora, Ho inserito nel corpo dei canti da 1 a 15 il tag <a id="1"></a> fino a <a id="15"></a>

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... scusami, devo aver commesso io un errore di battitura...

... correggi l tag:<scritpt> ... </scritpt>

... in: <script> ... </script>

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... prova, e nel caso ci risentiamo domani...

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

... Ho provato velocemente.

Ho anche provato a ridurre il ritardoK= 3; a 1 e poi a moltiplicarlo anche solo per 100 e no 1000

Ho visto che va bene, ma dopo il salto all'apertura dell'accordion text nel canto esatto, ritorna di nuovo all'inizio pagina.
Cambiando i secondi e il fattore di moltiplicazione nelle prove va più immediato, però risalta sempre all'inizio pagina. Se ci sarebbe anche una soluzione per lasciarlo nella posizione esatta sarebbe ottimo. Ma anche così mi dà comunque il canto aperto
ps.ho  inserito  le  ancore  fino  al  numero  30.

E ho lasciato i secondi a 3 ed il fattore di moltiplicazione a 1000

Grazie Ancora

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... ho controllato, e dal mio PC funziona bene...OK...
... invece dal mio smarphone sballa...surprisedundecided
... prova a sostituire il codice in "canti.html" con questo, ove ho eliminato l'effetto frizione del programma che effettivamente non serve da terza pagina...
... avvisami per controllare online...

<script>
$("document").ready(function() { //K>;
/** -- Ancoraggio dinamico ritardato da terza pagina - by KolAsim -- **/
/** -- Assegnaziona Ancore dinamica - by KolAsim -- **/
ritardoK= 3; // = secondi di ritardo
setTimeout(function() { //K1>;
anchorK = window.location.hash;
coll_ancoraK = anchorK ;
controlloK1()
},ritardoK * 1000);//K1<<;
return
}) //K<<;
//---------------f K2 (3,4,5)---------
function controlloK1() {//K2>;
$(".opened").click();
K = $( ".accordion_title_text" );
nK = 0;
setTimeout(function() {//K3>;
for(var i = 0, TotK = K.length; i < TotK; i++){//K4>;
nK += 1
k = $(K[i]).text();
$(K[i]).parent().parent().prepend('<a id= "'+nK+'"></a>');
setTimeout(function(){ //K5>;
location.href=anchorK;
}, 200); //K5<<;
}//K4<<;
offsetK();
}, 400); //K3<<;
} //K2<<;
//---------------f K6 (6,7)---------
function offsetK() { //K6>;
$(coll_ancoraK).click()
setTimeout(function(){ //K7>;
hK=$("#imStickyBarObjects").height();
scrollK=$(window).scrollTop();
scrollK=scrollK-hK;
$('html,body').scrollTop(scrollK);
}, 500);//K7<<;
} //K6<<;
</script>

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Grazie di tutto. SEI UN MAGO

adesso funziona sia sul computer che sul telefonino.
Ho modificato i secondi in 3 e il ritardo l'ho moltiplicato per 500 e no per 1000

ritardoK= 3; // = secondi di ritardo
setTimeout(function() { //K1>;
anchorK = window.location.hash;
coll_ancoraK = anchorK ;
controlloK1()
},ritardoK * 1000);//K1<<;

Non credo che ci saranno problemi. O credi che devo lasciare i valori che hai messo tu?

ps. Aspetto il tuo consiglio per poi chiudere il post.

Grazie ancora

Ler mais
Publicado em de Francesco M.
Francesco M.
Francesco M.
User
Autor

Scusa, Modificato in 1 secondo

ù

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... ho controllato adesso, e dal mio smarphone funziona bene ...OK...
... invece dal mio PC  non si attiva l'Ancoraggio in  canti.html ...surprisedundecided...

... forse hai abbassato di troppo il calcolo sul ritardo per latenza della pagina, e forse anche perchè il mio PC obsoleto o la mia linea sono troppo lenti...

... nel caso potresti personalizzare solo la variabile ritardoK  senza toccare il moltilicatore *1000
... per esempio 0  per azzerare il tempo; 0.25  per un quarto di secondo; 0.5  per mezzo secondo; eccetera...
... ma secondo me sarebbe meglio non scendere sotto ad 1  secondo...

... se fai la modifica controllerò nuovamente...

... e per come ti avevo accento prima fammi sapere se ti interesserebbero anche i collegamenti nella lista della colonna dei testi/titoli...

.

ciao

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Ho modificato i secondi a 0.5 e il moltiplicatore l'ho lkasciarto a 1000
anche per me adesso va bene

Ti ringrazio tanto. 
per la lista titoli si può anche lasciar stare. Inutile mettere tante ancore e collegamenti. Già questi sono molti

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... purtroppo è meno di un secondo e sul mio PC non funziona, cosa che funzionva prima, forse perchè è troppo lento...
... ma se hai avuto modo di valutare con altri PC, e se per te va bene, allora lascia pure così...

.

ciao

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪
Francesco M.
Francesco M.
User
Autor

Grazie ancora. E comunque la pagina sarà utilizzata al 99% sui telefonini

Ler mais
Publicado em de Francesco M.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... Grazie anche a te per averr sperimentato ed apprezzato... 

Ciao

.

Ler mais
Publicado em de  ‪ KolAsim ‪ ‪