Buenas, esto me funciona perfectamente:
Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<script>
var e = document.body;
var evento = "click";
alert(e);
if(document.all) {
e.attachEvent("on" + evento, openMenu);
} else {
e.addEventListener(evento, openMenu, false);
}
function openMenu(event) {
alert("Click");
return false;
}
</script>
</body>
</html>
Eso funciona perfectamente sobre la etiqueta BODY del codumento, pero si intento hacerlo con el body de un iframe no hay manera
Por que puede ser?
Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<div id="area">
<script type="text/javascript">
document.oncontextmenu = function() {
alert("Boton derecho en el documento");
return false;
}
var area = document.getElementById('area');
var iframe = document.createElement("iframe");
iframe.setAttribute('id','iframe');
iframe.style.width = "400";
iframe.style.height = "400";
function init() {
var doc = iframe.contentWindow.document;
doc.designMode = "on";
}
setTimeout(init, 100);
area.appendChild(iframe);
with(document.getElementById('iframe').contentWindow.document) {
clear();
open();
write("<html><body></body></html>");
close();
}
var e = document.getElementById('iframe').contentWindow.document.body;
var evento = "click";
//alert(e);
if(document.all) {
e.attachEvent("on" + evento, openMenu);
} else {
e.addEventListener(evento, openMenu, false);
}
function openMenu(event) {
alert("Click");
return false;
}
</script>
</div>
</body>
</html>
Alguna idea?¿