J'utilise l'outil AnythingSlider et j'ai quelques problèmes avec le css et js sur ce point. Fondamentalement, le curseur a un certain nombre d'onglets de navigation qui permettent de sauter d'une diapositive à l'autre. Je veux changer cela pour que, quand un coldfusion conditionnel s'exécute, certains onglets restent soit dans un état par défaut ou deviennent inactifs (changer la couleur de l'onglet en gris, ne laissez rien se produire lorsque l'utilisateur clique sur cet onglet.)AnythingSlider: Rendre les onglets Nav inactifs?
au fond, mon CF serait quelque chose comme
<cfif #X# is ""> //if true, make tab #2 not clickable, change color to grey
//else, if false, keep tab normal.
le curseur est essentiellement créé en html comme ceci:
<ul>
<li></li> //slide #1
<li></li> //slide #2 etc etc
</ul>
J'ai eu l'idée que peut-être que je pourrais mettre en place une classe li class = "false "à titre d'exemple et avoir deux étiquettes li par 'slide' (en montrer une si x est tr Donc, je ne suis pas sûr si cela a du sens mais surtout, j'ai besoin d'une main pour manipuler le CSS. Le code pour les onglets de curseur ressemble:
div.anythingSlider.activeSlider .thumbNav a.cur, div.anythingSlider.activeSlider .thumbNav a {
background-color: #7C9127;
}
MISE À JOUR Eh bien, je ne comprends pas. C'est le code à la fin de ma page (juste avant de mettre fin à la balise BODY.) J'ai jeté des alertes juste pour m'assurer que le code fonctionne, mais rien ne se passe: les onglets ne deviennent pas inactifs et la couleur ne change jamais.
I modifié anythingslider.css inclure ceci:.
div.anythingSlider.activeSlider .thumbNav a.false,
div.anythingSlider.activeSlider .thumbNav a.false:hover { background: #555; }
et c'est en bas de ma page principale ce script est enveloppé dans des balises cfoutput:
<cfif #selected_main_details.X# IS "">
settab(3, false);
<cfelse>
settab(3, true);
</cfif>
function settab(num, enable){
var panel = $('.thumbNav a.panel' + num);
if (enable){
panel
.removeClass('false')
.unbind('click')
.bind('click', function(){
panel.closest('.anythingSlider').find('.anythingBase').data('AnythingSlider').gotoPage(num);
return false;
})
} else {
panel
.addClass('false')
.unbind('click focusin')
.bind('click', function(){
return false;
})
}
}
Très reconnaissant pour cette aide. Cependant, je ne pouvais pas le faire fonctionner comme suggéré. Voir ci-dessus pour la façon dont je l'ai mis en œuvre. – stuttsdc
Le script est exécuté après l'initialisation de AnythingSlider? – Mottie
yup. J'ai même mis le script au bas de ma page. Ça n'a pas l'air d'avoir d'importance. J'ai lancé quelques alertes, juste pour voir si le code était en cours d'exécution. Ils ont surgi mais dans l'ensemble il n'y avait aucun effet sur les onglets. – stuttsdc