J'utilise le script suivant (qui nécessite le plugin cookies pour jquery) pour permettre javascript permis aux utilisateurs de modifier la taille de la police sur un site Web de charité médicale:JQuery Texte Resizing ne fonctionne pas avec IE
var sitefunctions = {
textresize: function() {
var $cookie_name = "TextSize";
var originalFontSize = $("html").css("font-size");
// if exists load saved value, otherwise store it
if ($.cookie($cookie_name)) {
var $getSize = $.cookie($cookie_name);
$("html").css({ fontSize: $getSize + ($getSize.indexOf("px") != -1 ? "" : "px") }); // IE fix for double "pxpx" error
} else {
$.cookie($cookie_name, originalFontSize);
}
// reset link
$(".reset").bind("click", function() {
$("html").css({ "font-size": originalFontSize });
$.cookie($cookie_name, originalFontSize);
});
// text "+" link
$(".increase").bind("click", function() {
var currentFontSize = $("html").css("font-size");
var currentFontSizeNum = parseFloat(currentFontSize, 10);
var newFontSize = currentFontSizeNum * 1.2;
if (newFontSize, 11) {
$("html").css({ "font-size": newFontSize });
$.cookie($cookie_name, newFontSize);
}
return false;
});
$(".decrease").bind("click", function() {
var currentFontSize = $("html").css("font-size");
var currentFontSizeNum = parseFloat(currentFontSize, 10);
var newFontSize = currentFontSizeNum/1.2;
if (newFontSize, 11) {
$("html").css({ "font-size": newFontSize });
$.cookie($cookie_name, newFontSize);
}
return false;
});
}
}
Vous pouvez puis l'appeler depuis votre page comme ceci:
$(document).ready(function() {
// show text resizing links
$(".AccessibilityControls").show();
sitefunctions.textresize();
})
Vous pouvez ensuite mettre des liens dans la page comme ceci:
<div class="AccessibilityControls" style="display:none;">
Text Size:<br />
<a class="increaseFont" style="font-size: 14pt;" title="Increase Text Size" href="#" rel="nofollow">A+</a> |
<a class="decreaseFont" style="font-size: 11pt;" title="Decrease Text Size" href="#" rel="nofollow">A-</a> |
<a class="resetFont" href="#" rel="nofollow">Reset </a>
</div>
Jusqu'ici, tout va bien. Ce qui précède suppose que vous avez défini une taille de police dans une feuille de style pour la balise html comme suit:
html { police-size: x-small; }
PROBLÈME 1:
Il fonctionne très bien tous les navigateurs sauf IE.
POURQUOI ?!
PROBLÈME 2:
Je suis bien le débogage dans Firefox, mais cela est un problème IE! J'ai essayé d'attacher le processus au débogueur VS, mais cela semble fonctionner de manière intermittente ...
OK, venez de trouver Outils de développement. Va faire un tour ... – awrigley
Erreur dans jquery, inval arg ... – awrigley
AARRRGHHHHHH !!! – awrigley