过渡效果仅适用于 firefox
Transition effect only working in firefox
我正在尝试展开鼠标所在的网格部分,它在 firefox 中都可以工作,但在任何其他浏览器中都不起作用,但奇怪的是网格部分是展开的,但没有显示过渡,所以它扩展得非常快我试过只使用 css 但它不起作用它只适用于 firefox
grid = document.getElementsByClassName('grid-container')[0];
firstItem = grid.children[0];
secondItem = grid.children[1];
thirdItem = grid.children[2];
if(window.matchMedia("(min-width: 768px)").matches){
var itemTouch = (item) => {
grid.style.transition = "grid-template-columns 0.5s ease";
if(item == firstItem)
grid.style.gridTemplateColumns = '0.25fr 0.15fr 0.15fr';
if(item == secondItem)
grid.style.gridTemplateColumns = '0.15fr 0.25fr 0.15fr';
if(item == thirdItem)
grid.style.gridTemplateColumns = '0.15fr 0.15fr 0.25fr';
}
var standardGrid = () => {
grid.style.gridTemplateColumns = '0.2fr 0.2fr 0.2fr';
}
}
else{
const items = [firstItem, secondItem, thirdItem];
for (let i = 0; i < items.length; i++){
items[i].removeAttribute("onmouseenter");
items[i].removeAttribute("onmouseleave");
}
}
除 Firefox 之外的任何其他浏览器均未实现网格动画
我正在尝试展开鼠标所在的网格部分,它在 firefox 中都可以工作,但在任何其他浏览器中都不起作用,但奇怪的是网格部分是展开的,但没有显示过渡,所以它扩展得非常快我试过只使用 css 但它不起作用它只适用于 firefox
grid = document.getElementsByClassName('grid-container')[0];
firstItem = grid.children[0];
secondItem = grid.children[1];
thirdItem = grid.children[2];
if(window.matchMedia("(min-width: 768px)").matches){
var itemTouch = (item) => {
grid.style.transition = "grid-template-columns 0.5s ease";
if(item == firstItem)
grid.style.gridTemplateColumns = '0.25fr 0.15fr 0.15fr';
if(item == secondItem)
grid.style.gridTemplateColumns = '0.15fr 0.25fr 0.15fr';
if(item == thirdItem)
grid.style.gridTemplateColumns = '0.15fr 0.15fr 0.25fr';
}
var standardGrid = () => {
grid.style.gridTemplateColumns = '0.2fr 0.2fr 0.2fr';
}
}
else{
const items = [firstItem, secondItem, thirdItem];
for (let i = 0; i < items.length; i++){
items[i].removeAttribute("onmouseenter");
items[i].removeAttribute("onmouseleave");
}
}
除 Firefox 之外的任何其他浏览器均未实现网格动画