Сообщение от ILL-JAH
|
Помогите с проблемой в IE < 11.
|
Это старинная проблема... Это особенность "пустых" элементов.
Если добавить фон (или фоновую картинку) - все будет работать. Просто сделай его практически прозрачным.
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>imgBox</title>
<style type="text/css">
* {margin: 0; padding: 0}
body { max-width: 1024px }
</style>
<script type="text/javascript">
window.onload = function ()
{
var test = {};
test.div = document.createElement('div');
test.div.style.position = 'relative';
test.img = document.createElement('img');
test.img.src = 'http://www.podillbot.3141.ru/levels/blacksite/blacksite1.jpg';
test.img.style.display = 'block';
test.img.style.width = '100%';
test.div.appendChild(test.img);
test.btn = document.createElement('a');
test.btn.href = '#';
test.btn.style.position = 'absolute';
test.btn.style.display = 'block';
test.btn.style.height = '100%';
test.btn.style.width = '100%';
test.btn.style.top = 0;
/* начало */
test.btn.style.left = 0;
test.btn.style.background = '#ffffff';
test.btn.style.opacity = '0.1';
/* окончание */
test.div.appendChild(test.btn);
document.body.appendChild(test.div);
test.btn.myMethod = function (event)
{
if (event && event.preventDefault) event.preventDefault();
else window.event.returnValue = false;
if (event && event.stopPropagation) event.stopPropagation();
else event.cancelBubble = true;
alert('It`s work!');
}
if (document.addEventListener) test.btn.addEventListener('click', test.btn.myMethod, false);
else if (document.attachEvent) test.btn.attachEvent('onclick', test.btn.myMethod);
}
</script>
</head>
<body>
</body>
</html>