Цитата:
P.S. Жду тестовый пример, тут. Не по какой-то ссылке на сторонний ресурс... :no: |
Вот вам тестовый пример без jQuery. :)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Документ без названия</title>
<style type="text/css">
.test {
pointer-events: none;
}
.test::after {
background: red;
content: '';
display: block;
height: 100px;
pointer-events: all;
width: 100px;
}
</style>
</head>
<body>
<div class="test">Hello world!</div>
<script type="text/javascript">
document.querySelector('.test').onclick = function() {
alert('Hello world!');
};
</script>
</body>
</html>
|
:write: на всякий для ie < 9 пролетает.
https://developer.mozilla.org/en-US/...pointer-events |
рони, неужели ими ещё кто-то пользуется? :blink:
|
Цитата:
Т.ч. пока ничего нового.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<!--
<script src='http://code.jquery.com/jquery-latest.js'></script>
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
<link rel="stylesheet/less" type="text/css" href="style.less">
<script src="http://cdnjs.cloudflare.com/ajax/libs/less.js/2.5.0/less.min.js"></script>
-->
<style type='text/css'>
.test {
pointer-events: none;
}
.test::after {
background: red;
content: '';
display: block;
height: 100px;
pointer-events: all;
width: 100px;
}
</style>
<script type='text/javascript'>
</script>
</head>
<body>
<div class="test">Hello world!</div>
<script type="text/javascript">
document.querySelector('.test').onclick = function(e) {
alert(e.target.tagName);
};
</script>
</body>
</html>
|
Аналогичный пример уже был продемонстрирован в самом начале.
http://javascript.ru/forum/dom-windo...tml#post170061 Там же и дан ответ на вопрос темы. Пока никаких опровергающих примеров я не видел. :no: |
ksa, ну больше никак не получится сделать, только так.
|
Цитата:
Увы и ах, но pointer-events не является решением. PS. Ссыль я удалил. |
Цитата:
Внештатные решения типично требуют кода больше, чем дополнения через скрипт новых элементов, покрывающих нужные старые. |
так можно,только тут не определишь был ли это клик по :before или :after
<style>
div {
color: green;
border: 1px green dashed;
position: absolute;
}
div:after {
content:"Ы";
width: 100px;
height: 100px;
border: 2px gray solid;
padding: 5px;
font-size: 20px;
position: absolute;
top: 30px;
left: 30px;
}
</style>
<div id="divcheg">дивчег</div>
<script>
divcheg.onclick = function(e) {
if ((e.offsetX > this.offsetWidth) || (e.offsetY > this.offsetHeight)) {
alert(e.type + ' on pseudo element');
} else {
alert(e.type + ' on ' + e.target.tagName)
}
};
</script>
|
| Часовой пояс GMT +3, время: 19:49. |