[英]How can I run a certain JavaScript (jQuery) function based on screen resolution?
[英]How can I change a CSS attribute by Javascript when a certain minimum screen resolution size is detected
我有以下代碼:
function AUTADIV () {
var BRW = window.outerWidth;
x = (BRW/1280) * 20
document.getElementsByTagName("a").style.fontSize = x
}
並且標簽<a>
已經在.css文件中的此類下:
a {
position:relative;
z-index:1;
color:White;
background-color: transparent;
font-size:20pt;
text-decoration: none;
text-shadow: blue 0em 0em 0.4em
}
當屏幕較大的人看到我的網站時,背景會填滿所有內容,但是字體太小。 有什么方法可以使其自動調整大小? 如果沒有,如何通過JavaScript更改font-size:20pt
? 我的代碼僅在字體大小樣式為內聯時才有效,並且我在CSS腳本中需要它。
我發現我需要的代碼通過onResize
事件激活。
如果需要放在CSS中,則可能很難做到。 但是,如果可以使用JS動態更改它,則可以使用簡單的測試來完成此操作,例如:
(我正在使用jQuery)
$.getDocHeight = function(){
return Math.max(
$(document).width(),
$(window).width(),
/* For opera: */
document.documentElement.clientWidth
);
};
if($.getDocHeight>threshhold){ // some threshhold of a max width
$('a').style('font-size','40pt');
}
這也可以在常規js中完成。 很難確定所有不同瀏覽器的寬度,這就是為什么我包含該功能。 但是一旦有了寬度,您只需要做一個簡單的檢查,就可以提高錨標記的字體大小樣式。 我建議使用靜態大小,以使字體更容易預測並且不會隨頁面大小縮放。
當考慮不同類型的用戶時(這是移動用戶,您絕對不希望字體太小而不能全部容納在一頁上),這是最佳做法。
代碼的Src: http : //james.padolsey.com/javascript/get-document-height-cross-browser/
您可以通過訪問CSSRule-Object修改規則。
IE <9: http : //help.dottoro.com/ljcufoej.php
其他: http : //help.dottoro.com/ljdxvksd.php
使用媒體查詢可能會獲得更好的結果:
@media all and (max-width: 1280px) {
a{font-size:12pt;}
}
您可以重復此操作以減小尺寸。 它不會平穩過渡,但不需要JavaScript(而且在調整窗口大小時進行了很多更改,以至於可能不會注意到文本大小的變化)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.