document.oncontextmenu = function(e){
var node = window.event ? event.srcElement.tagName : e.target.nodeName;
if (node != "A" && node != "IMG") {
showLayer('myfunc');
return false;
}
}
if(document.layers) {
window.captureEvents(Event.MOUSEDOWN);
window.onmousedown = function(e){
if (e.target==document){
showLayer('myfunc');
return false;
}
}
} else {
if (!document.getElementById) {
document.onmousedown = function(){
var node = event.tagName;
if (event.button==2 && node != "A" && node != "IMG"){
showLayer('myfunc');
return false;
}
}
}
}
Ledsen för den knepiga rubriken, men den hade blivit så lång annars.
Här är problemet:
Jag pillar lite med en sida, bara för att testa litegranna, och vill använda högerklick till att visa ett lager, istället för att få upp den gråa menyn. (Tanken är inte ett högerklicksskydd, "visa källa" kommer fortfarande att vara tillgänglig).
Allt detta fungerar som det skall just nu, MEN om man hittar en bild man vill tanka ned på sidan, eller man vill högerklicka på en länk, så kommer detta lagret upp. Och det är mindre bra.
Därav min rubrik, att komma runt funktionaliteten. Om man högerklickar på en länk eller bild vill jag inte få upp lagret, bara om man högerklickar på den övriga sidan.
Går detta att lösa på något sätt?
För jag irriterar själv ihjäl mig på högerklicksskydd, så om detta blir mer än bara ett experiment så vill jag inte utsätta eventuella besökare för samma sak själv.
<html>
<head>
<script src="layerlib.js"></script>
<script language="JavaScript">
<!--
document.oncontextmenu = function(){
showLayer('myfunc');
return false;
}
if(document.layers) {
window.captureEvents(Event.MOUSEDOWN);
window.onmousedown = function(e){
if (e.target==document){
showLayer('myfunc');
return false;
}
}
} else {
document.onmousedown = function(){
if (event.button==2){
showLayer('myfunc');
return false;
}
}
}
//-->
</script>
<style>
<!--
.myfunc{
text-align: center;
background-color:#c0c0c0;
width:500px;
height:500px;
position:absolute;
left:50%;
top:50%;
margin-left:-250px;
margin-top:-250px;
border: 1px #000000 solid;
visibility:hidden;
z-index:999;
}
-->
</style>
</head>
<body>
<a href="test.htm?apa=nej">länk</a>
<div class="myfunc" id="myfunc" onMouseOut="hideLayer('myfunc')"> myfunc </div>
</body>
</html>
MVH Patrik
