var fontSize = $(this).css('fontSize');
fontSize = parseInt(fontSize, ...
Единица, которую вы получаете из font-size
, не обязательно (а) пиксели и (б) не та же самая единица измерения, что и вы.
Не указано, какая единица измерения используется для возвратадлина, но во многих браузерах это в настоящее время точки.Так как точки меньше пикселей, целочисленная длина будет больше, поэтому вы можете без проблем продолжать *0.95
всегда.
Даже если бы это были пиксели, браузер мог бы округлить размер до ближайшегопикселей, что делает 95% размера того же размера, что и 100%, когда вы читаете его обратно.Или вы можете установить минимальный размер шрифта и больше не сможете его уменьшить.
Поэтому вместо того, чтобы читать текущий размер шрифта на каждом шаге, оставьте нужный размер в пикселях.переменная и уменьшать эту переменную каждый раз.Затем, если вы достигнете заранее определенной нижней границы для значения этой переменной, откажитесь.