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

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

Сообщение 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 ... o-click-on
Ответить

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

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

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

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

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