【发布时间】:2020-08-13 08:52:13
【问题描述】:
我需要将整个 div 重定向到特定的 URL。但是,在该 div 中,我还想添加其他可点击的 div 标签,以便它可以从 javascript 中进行更改。
我用锚标记包裹了父 div,以使整个 div 及其内容重定向。
一个简化的例子:
<a href="#">
<div class="firstContainer">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
<div class="secondContainer">
<div class="secondBox">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
</div>
</a>
编辑:
- onClick() 不起作用。
另外,我忘了提到我需要它来处理事件侦听器和 JQuery 函数(click()、on()、...)
- 仅当元素数量保持不变时,给出的解决方案才有效。
例如: 网页加载了以下元素:
<a href="#">
<div class="firstContainer">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
<div class="secondContainer">
<div class="secondBox">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
</div>
</a>
Javascript 复制它:
// First Section
<a href="#">
<div class="firstContainer">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
<div class="secondContainer">
<div class="secondBox">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
</div>
</a>
// Second Section
<a href="#">
<div class="firstContainer">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
<div class="secondContainer">
<div class="secondBox">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
</div>
</a>
给出的解决方案不适用于第二部分,仅适用于第一部分。
第二部分使用以下 JQuery / Javascript 代码创建:
let el = `
<a href="#">
<div class="firstContainer">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
<div class="secondContainer">
<div class="secondBox">
<div class="noRedirctYesOnClickEvents"> <!-- Does not redirct but can be changed by event E.g.: click, change -->
</div>
</div>
</div>
</a>
`;
document.append(el);
【问题讨论】: