Java 脚本的媒体查询之类的东西?
Something like media query for Java Script?
最近我在问这个 有人给了我一个 Java 脚本,它工作得很好,直到涉及到调整大小和使用媒体查询,当我向上滚动时(屏幕尺寸更小)这意味着使用较小的默认字体大小)javascript 将字体大小更改回默认大小。
这是我的代码(由于某种原因在这里不起作用,但在我的代码中它起作用)
问题是:我如何更改此 Java 脚本以使其以某种方式响应?
var scrollCn = function(quantity)
{
var scrollTop = (window.pageYOffset || document.scrollTop) - (document.clientTop || 0);
var size = 25 - ((scrollTop / quantity) || 0);
if(size <= 15) size = 15;
/* var size = 20 - ((scrollTop / quantity) || 0);
if(size <= 10) size = 10;
Something i have tried-not working :D
*/
document.querySelector('.bignadpis p').setAttribute('style', 'font-size: '+size+'px;');
};
window.addEventListener('scroll', function(){ scrollCn(10) });
body {
height: 3000px;
}
.bignadpis {
max-width: 500px;
z-index: 10001;
font-family: 'Paytone One', sans-serif;
font-style: normal;
font-weight: normal;
font-size: 25px;
text-transform: uppercase;
position: fixed;
float: left;
padding-left: 5%;
}
@media screen and (max-width:1400px) {
.bignadpis {
max-width: 400px;
font-size: 20px;
}
}
<div class="bignadpis">
<p>Účtovníctvo a zúčtovanie zdravotnej starostlivosti Svit</p>
</div>
我稍微修改了你的代码。添加了浏览器宽度的条件 window。它像媒体查询一样工作。有必要吗?
if( window.innerWidth <= 1400 ){
var size = 20 - ((scrollTop / quantity) || 0);
if(size <= 10) size = 10;
}
var scrollCn = function(quantity)
{
var scrollTop = (window.pageYOffset || document.scrollTop) - (document.clientTop || 0);
if( window.innerWidth > 1400 ){
var size = 25 - ((scrollTop / quantity) || 0);
if(size <= 15) size = 15;
}
if( window.innerWidth <= 1400 ){
var size = 20 - ((scrollTop / quantity) || 0);
if(size <= 10) size = 10;
}
document.querySelector('.bignadpis p').setAttribute('style', 'font-size: '+size+'px;');
};
window.addEventListener('scroll', function(){ scrollCn(10) });
body {
height: 3000px;
}
.bignadpis {
max-width: 500px;
z-index: 10001;
font-family: 'Paytone One', sans-serif;
font-style: normal;
font-weight: normal;
font-size: 25px;
text-transform: uppercase;
position: fixed;
float: left;
padding-left: 5%;
}
}
@media screen and (max-width:1400px) {
.bignadpis {
max-width: 400px;
font-size: 20px;
}
}
<div class="bignadpis">
<p>Účtovníctvo a zúčtovanie zdravotnej starostlivosti Svit</p>
</div>
最近我在问这个
这是我的代码(由于某种原因在这里不起作用,但在我的代码中它起作用)
问题是:我如何更改此 Java 脚本以使其以某种方式响应?
var scrollCn = function(quantity)
{
var scrollTop = (window.pageYOffset || document.scrollTop) - (document.clientTop || 0);
var size = 25 - ((scrollTop / quantity) || 0);
if(size <= 15) size = 15;
/* var size = 20 - ((scrollTop / quantity) || 0);
if(size <= 10) size = 10;
Something i have tried-not working :D
*/
document.querySelector('.bignadpis p').setAttribute('style', 'font-size: '+size+'px;');
};
window.addEventListener('scroll', function(){ scrollCn(10) });
body {
height: 3000px;
}
.bignadpis {
max-width: 500px;
z-index: 10001;
font-family: 'Paytone One', sans-serif;
font-style: normal;
font-weight: normal;
font-size: 25px;
text-transform: uppercase;
position: fixed;
float: left;
padding-left: 5%;
}
@media screen and (max-width:1400px) {
.bignadpis {
max-width: 400px;
font-size: 20px;
}
}
<div class="bignadpis">
<p>Účtovníctvo a zúčtovanie zdravotnej starostlivosti Svit</p>
</div>
我稍微修改了你的代码。添加了浏览器宽度的条件 window。它像媒体查询一样工作。有必要吗?
if( window.innerWidth <= 1400 ){
var size = 20 - ((scrollTop / quantity) || 0);
if(size <= 10) size = 10;
}
var scrollCn = function(quantity)
{
var scrollTop = (window.pageYOffset || document.scrollTop) - (document.clientTop || 0);
if( window.innerWidth > 1400 ){
var size = 25 - ((scrollTop / quantity) || 0);
if(size <= 15) size = 15;
}
if( window.innerWidth <= 1400 ){
var size = 20 - ((scrollTop / quantity) || 0);
if(size <= 10) size = 10;
}
document.querySelector('.bignadpis p').setAttribute('style', 'font-size: '+size+'px;');
};
window.addEventListener('scroll', function(){ scrollCn(10) });
body {
height: 3000px;
}
.bignadpis {
max-width: 500px;
z-index: 10001;
font-family: 'Paytone One', sans-serif;
font-style: normal;
font-weight: normal;
font-size: 25px;
text-transform: uppercase;
position: fixed;
float: left;
padding-left: 5%;
}
}
@media screen and (max-width:1400px) {
.bignadpis {
max-width: 400px;
font-size: 20px;
}
}
<div class="bignadpis">
<p>Účtovníctvo a zúčtovanie zdravotnej starostlivosti Svit</p>
</div>