在JavaScriptDOM中,是否可以将整个按钮功能克隆到另一个按钮?
我的意思是,是否可以将现有按钮与新创建的按钮连接起来,以用作现有按钮 参考地点: 打开上述链接后,请将以下代码粘贴到浏览器控制台:在JavaScriptDOM中,是否可以将整个按钮功能克隆到另一个按钮?,javascript,dom-events,Javascript,Dom Events,我的意思是,是否可以将现有按钮与新创建的按钮连接起来,以用作现有按钮 参考地点: 打开上述链接后,请将以下代码粘贴到浏览器控制台: let title = document.querySelector(".product-details__name").textContent; let price; let oldPrice = document.querySelector(".product-details__old-price"); if (oldPrice) { price =
let title = document.querySelector(".product-details__name").textContent;
let price;
let oldPrice = document.querySelector(".product-details__old-price");
if (oldPrice) {
price = oldPrice.nextSibling.textContent.trim();
} else {
price = document.querySelector(".js-product-price").textContent;
}
let div = document.createElement("div");
let path = document.querySelector("header");
div.innerHTML = `
<div
id="sticky-nav"
style="position: fixed;
top:110px;
display: none;
padding: 0 10px;
justify-content: space-between;
align-items: center;
background-color:#e4e4e4;
width: 100vw;"
class="sticky-wrapper"
>
<div
style="width:80%; display: flex; justify-content: space-between; align-items:center"
class="sticky-text-wrapper"
>
<p style="margin: 0;" class="sticky-text">${title}</p>
<p style="margin: 0;" class="sticky-price">${price}</p>
</div>
<span style="width: 18%; display: flex; justify-content: space-around;" class="button"></span>
</div>`;
path.appendChild(div);
const sourceElement = document.querySelector(".js-product-details-submit-wrapper button");
const destination = document.querySelector(".button");
const copy = sourceElement.cloneNode(true);
destination.appendChild(copy);
window.addEventListener("scroll", () => {
const scrollPos = window.scrollY;
if (scrollPos > 1500) {
document.getElementById("sticky-nav").style.display = "flex";
} else {
document.getElementById("sticky-nav").style.display = "none";
}
});
let title=document.querySelector(“.product-details\uuuu name”).textContent;
让价格;
让oldPrice=document.querySelector(“.product-details\uu old-price”);
如果(旧价格){
price=oldPrice.nextSibling.textContent.trim();
}否则{
价格=document.querySelector(“.js产品价格”).textContent;
}
设div=document.createElement(“div”);
let path=document.querySelector(“头”);
div.innerHTML=`
${title}
${price}
`;
appendChild(div)路径;
const sourceElement=document.querySelector(“.js产品详细信息提交包装器按钮”);
const destination=document.querySelector(“.button”);
const copy=sourceElement.cloneNode(true);
目的地。追加子项(副本);
window.addEventListener(“滚动”,()=>{
const scrollPos=window.scrollY;
如果(滚动位置>1500){
document.getElementById(“粘性导航”).style.display=“flex”;
}否则{
document.getElementById(“粘性导航”).style.display=“无”;
}
});
我想将粘性导航按钮连接到现有的“添加到行李”按钮,两个按钮的功能将是相同的。PDP(产品详细信息页面)上将显示与控制中相同的消息,并且篮子图标数量将增加。我该怎么做呢?在一个按钮的单击处理程序中,您可以触发另一个按钮,如下所示(当然,名称由以下部分组成): 您可以创建一个函数(在JS中)并从原始按钮(在您的示例中为addToBagBtn)和新创建的按钮(在您的示例中为stickyNavBtn)调用它 比如:-
/*JavaScript*/
函数doSomething(){
提醒(“替换为您喜欢的任何任务!”);
}
var button=document.createElement(“按钮”);
button.innerText=“新创建的按钮”;
button.onclick=函数(){
doSomething();
}
document.getElementById(“容器”).appendChild(按钮)代码>
原始按钮
非常感谢@Andre帮助我。非常感谢。
stickyNavBtn.onclick = () => addToBagBtn.click();