我在HTML中有一个按钮,我想在点击时转发到另一个页面
(function() {
'use strict';
window.addEventListener('DOMContentLoaded', init, false);
function init() {
let url = document.getElementsByClassName("Button__LandingPage");
url.addEventListener("click", forwardURL, false);
function forwardURL() {
location.replace("https://www.w3schools.com");
}
};
})();
<button class="Button Button__LandingPage" name="landingPageButton">Home</button>
我在这里做错了什么?感谢您的任何帮助。
getElementsByClassName
返回集合而不是单个结果。最好使用带有getElementById
的 id。但是,在您的情况下,您可以使用getElementsByClassName[0]
获取集合的第一个元素。下面是一个完整的示例:
(function() {
'use strict';
window.addEventListener('DOMContentLoaded', init, false);
function init() {
let url = document.getElementsByClassName("Button__LandingPage")[0];
url.addEventListener("click", forwardURL, false);
function forwardURL() {
//location.replace("https://www.w3schools.com");
console.log("Forward");
}
};
})();
<button class="Button Button__LandingPage" name="landingPageButton">Home</button>