使用Javascript更改我网站上的字体大小

时间:2015-04-09 15:07:39

标签: javascript

这是我的网站http://natjecanje.interes.hr/

我想拥有大A和小A并且通过按下其中一个“A”人可以更改网站上的所有字母大小,所有元素都需要更改字体大小,谢谢! :)

P.S。我做了谷歌搜索,但我找不到我想要的东西。

3 个答案:

答案 0 :(得分:0)

你需要使用2个不同的CCS Style,一个小JS脚本

请在下面找到Javascript:

function setActiveStyleSheet(title) {
var i, a, main;
for(i=0; (a = document.getElementsByTagName("link")); i++) {
if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
a.disabled = true;
if(a.getAttribute("title") == title) a.disabled = false;
}
}
if (navigator.appName == "Microsoft Internet Explorer") {
window.resizeBy(0,-10);
window.resizeBy(0,+10);
}
}
function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

window.onload = function(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getPreferredStyleSheet();
  setActiveStyleSheet(title);
}

window.onunload = function(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);

您可以将此脚本保存在名为:changement_css.js

的文件夹中

现在您需要第一个CCS样式的常规字体大小,另一个具有不同字体大小的字体,并将其包含在HTML文件中。

<!--Default CSS-->

<link rel="stylesheet" type="text/css" href="normal.css" title="normal">

<!--Alternate CSS-->

<link rel="alternate stylesheet" type="text/css" href="grand.css" title="grand">

复制这些行而不是常规CSS 然后,使用此代码在CSS链接后调用JS:

<script language="JavaScript" src="changement_css.js" type="text/javascript"></script>

然后,您需要一个按钮来更改字体大小:

<ul>

<li><a href="#" onclick="setActiveStyleSheet('normal'); return false;">Normal</a></li>

<li><a href="#" onclick="setActiveStyleSheet('grand'); return false;">Grand</a></li>

</ul>

我希望这可以帮到你。

此消息来自:http://forum.alsacreations.com/topic-6-11551-1-Boutons-AugmenterDiminuer-la-Taille-du-Texte-.html

答案 1 :(得分:0)

function promjenaVelicineFonta(inc) 
{ 
var p = document.getElementsByTagName('p'); 
for(n=0; n<p.length; n++) { 
if(p[n].style.fontSize) { 
var size = parseInt(p[n].style.fontSize.replace("px", "")); 
} else { 
var size = 14; 
} 
p[n].style.fontSize = size+inc + 'px'; 
} 

var span = document.getElementsByTagName('span'); 
for(n=0; n<span.length; n++) { 
if(span[n].style.fontSize) { 
var size = parseInt(span[n].style.fontSize.replace("px", "")); 
} else { 
var size = 14; 
} 
span[n].style.fontSize = size+inc + 'px'; 
} 
}

我找到了解决方案,就在这里。

答案 2 :(得分:-1)

你的意思是字体大小(即10pt,12pt等)或字体大写(即a或A)?我认为你的意思是基于你问题的主题来进行大写(因为你说&#39;大&#39;和&#39;小&#39;)?

您可以通过&#39; text-transform&#39;来控制大写。 property(http://www.w3schools.com/cssref/pr_text_text-transform.asp)。

您可以使用JavaScript添加此线程中概述的删除CSS类:Change an element's class with JavaScript

使用这种方法,你可以添加删除CSS类,它们使用text-transform来改变字体的大小写。