Как заставлять нажать на сам элемент, не отвечая на нажмите на детские элементы [закрыто]Javascript

Форум по Javascript
Ответить
Anonymous
 Как заставлять нажать на сам элемент, не отвечая на нажмите на детские элементы [закрыто]

Сообщение Anonymous »

Моя тестовая страница имеет два элемента. Ширина и высота дочернего элемента больше, чем родительский элемент. Когда я выполняю следующий код, дочерний элемент будет автоматически прокручивать. Есть ли способ предотвратить прокрутку дочернего элемента и сделать щелчок только по родительскому элементу?

Код: Выделить всё

test('test_temp', async t => {
await t.wait(1000)
await t.click('.parent',{
offsetX: 300,
offsetY: 300
})
await t.wait(5000)
await t.eval(() => {
window.HTMLElement.prototype.scrollIntoView = function () {
// 禁用所有元素的滚动
};
});
await t.click('.parent',{
offsetX: 20,
offsetY: 20
})
})< /code>





testChild



.parent {
position: relative;
width: 200px;
height: 200px;
overflow: auto;
border: 2px solid black;
z-index: 3;
/* background: blueviolet; */
}

.child {
content: "";
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
width: 1000px;
height: 1000px;
background: linear-gradient(#0602f5, #01ff40, #f50222,#f1f502);
}







const parent = document.querySelector('.parent');
parent.addEventListener('click', function (e) {
console.log(e, e.target, e.currentTarget);

});
const child = document.querySelector('.child');
child.addEventListener('click', function (e) {
console.log(e, e.target, e.currentTarget);
e.stopPropagation();
})






Подробнее здесь: https://stackoverflow.com/questions/797 ... n-child-el
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»