为什么我的 javascript 只执行第一行? Prestashop 商店
Why my javascript execute just the first lines ? Prestashop
我正在用 CMS Prestashop 建立一个网站,我正在尝试改变它的风格。
在 Prestashop 中,我们可以添加一个 javascript 文件并进行一些更改,但是系统只执行第一个 lines.So 问题是,为什么?
也许它来自我的代码。
window.onscroll = function () {
var title = document.getElementById('header_menu');
if (window.pageYOffset > 100) {
title.classList.add("white_menu");
} else {
title.classList.remove("white_menu");
}
};
var title_cat = document.getElementById("main").getElementsByClassName( 'h1' )[0];
title_cat.classList.add("font_size_null");
var research_bar= document.getElementById('_desktop_search');
research_bar.classList.add("research");
当我尝试更改我的行的顺序时,只执行了第一个更改。
提前致谢,
疾病
可能是因为 getElementById 方法仅适用于 DOMDocument 对象(在浏览器中为文档)。
您正在尝试访问 DOM 元素的 DOM 文档,这是不可能的。 (您不能“链接”多个 getElementById())
对于具有“main id”的元素的子元素的所有 h1 元素,我们可以使用类似的东西:
var title_cat = document.querySelectorAll("#main h1");
或者如果我们只对第一场比赛感兴趣(如您的示例):
var title_cat = document.querySelector("#main h1");
我正在用 CMS Prestashop 建立一个网站,我正在尝试改变它的风格。 在 Prestashop 中,我们可以添加一个 javascript 文件并进行一些更改,但是系统只执行第一个 lines.So 问题是,为什么?
也许它来自我的代码。
window.onscroll = function () {
var title = document.getElementById('header_menu');
if (window.pageYOffset > 100) {
title.classList.add("white_menu");
} else {
title.classList.remove("white_menu");
}
};
var title_cat = document.getElementById("main").getElementsByClassName( 'h1' )[0];
title_cat.classList.add("font_size_null");
var research_bar= document.getElementById('_desktop_search');
research_bar.classList.add("research");
当我尝试更改我的行的顺序时,只执行了第一个更改。
提前致谢, 疾病
可能是因为 getElementById 方法仅适用于 DOMDocument 对象(在浏览器中为文档)。 您正在尝试访问 DOM 元素的 DOM 文档,这是不可能的。 (您不能“链接”多个 getElementById())
对于具有“main id”的元素的子元素的所有 h1 元素,我们可以使用类似的东西:
var title_cat = document.querySelectorAll("#main h1");
或者如果我们只对第一场比赛感兴趣(如您的示例):
var title_cat = document.querySelector("#main h1");