Script JS che non funziona sempre
Autore: Frate F.
Visite 1265,
Followers 1,
Condiviso 0
Ho questo JS:
[code]<script type="text/javascript"> document.oncontextmenu=new Function();</script>[/code]
che inserito dopo l'apertura del tag BODY dovrebbe riabilitare il tasto destro del mouse solo in quella pagina dopo che è stato disabilitato in tutto il progetto dalle impostazioni!
Il problema è che in certe pagine funziona e altre no!
C'è una spiegazione?
Grazie
Postato il
Autore
Il tag [code] non fa parte dello script! Lo ho inserito perché credevo si dovesse per inserire del codice come di solito in tutti i forum
... a rigor di logica penso che non potrebbe funzionare, perchè l'evento principale si attiva dopo il caricamento della pagina e quindi passa sopra alle altre istruzioni annullandole...
... penso che dovresti associare il codice all'evento jS window.onload o a quello jQ document.ready posticipando/temporizzando a mezzo secondo, ed anche meno...
.
Potrei capire a quale scopo disabilitate il tasto destro del mouse considerando che se uno vuole, con i broswer di oggi, si può ispezionare ugualmente il codice, prelelvare immagini, ecc... ecc...
Non è polemica ma solo piacere di sapere, considerando che ora hai un problema che non ci sarebbe riabilitando il tasto destro
Autore
Allora si potrebbe chiedere ai programmatori del software perché hanno previsto e abilitato questa funzione! Non credi?
Infatti non riesco a capirlo, però non mi hai risposto alla domanda, giuro non è polemica ma non ho mai capito perchè c'è questa possibilità, metti il link del tuo sito e anche se hai disabilitato il tasto destro sia io, che il 99% degli amici del forum riusciremo a prelevare codice, immagine e tutto quello che sarebbe pssibile prelevare con il tasto dx abilitato e non perchè siamo bravi ma perchè con i browser di oggi è possibile farlo.
Autore
Autore
... perchè lì il primo non è associato all'evento onload()...
(... ah! che bel ricordo SwishMax... ...)
.
Autore
Allora più che inserirlo nelle proprietà della pagina "espeto/dopo l'apertura del tag body" dove devo mettere il codice nelle altre pagine che mi interessano?
... come avevo detto prima, per esempio nell'evento onload in /head e lo ritardi di mezzo secondo o anche 1/4° di secondo...
.
Considerando il fatto che website carica già jquery utilizzerei quel metodo che ti garantisce che il codice venga caricato
<script>
$(document).ready(function(){
TUO CODICE
});
</script>
E toglierei anche type="text/javascript" che è deprecato.
Io penso che lo abbiano abilitato proprio perchè in tanti (inutilmente) lo chiedevano...
@Giorgio, ... sì, ...ma window.onload è usato anche nel programma attuale e richiede meno risorse anche se irrilevante in presenza già del jQ; ...comunque i due metodi come anticipato sono ambivalenti...
...
@Frate, ...se forse non hai capito come fare e come temporizzare, ... il codice completo che segue, per pagine singole, va incollato in questa posizione:
>> Passo 3 - Mappa > Finestra Proprietà Pagina > Le opzioni della Sezione Esperto | ▪Codice personalizzato: >(3°)Prima della chiusura del tag HEAD:
<script> window.onload=function(){setTimeout(function(){document.oncontextmenu=new Function(); }, 500); }//K; </script>
... 500 = mezzo secondo ...
.
... non regge come scusante , ...in quanto il messaggio viene anche utilizzato per mettere in risalto la copertura dei diritti d'autore...
... invece, anche se Frate non ti ha risposto, la logica del riabilitare il tasto destro potrebbe stare nel permettere e facilitare il copia/incolla solo in alcune pagine..
... o l'alternativa inversa, mettere la protezione solo nelle pagine interessate...
.
Autore
Per la risposta a Patrizia B.. Io non ho voluto aprire una discussione. Ma tu hai centrato perfettamente a meravoglia la questione!!!
Grazie! Grazie!
Autore
se è questo che intendi...
in circa 1 minuto
...post edit...
avevo postato codice e messaggio... ma visto che destinato a Patrizia...
non voglio interferire nel "giochino"... sostituisco gran parte del codice e messaggio con omissis...
<SCRIPT LANGUAGE="Javascript">
...
<!--B...... C. S.... R......... C..........
OMISSIS
<!-- .R... .I .E. .I...... .O.........!! --> ......
... gli esperti e sicuri di sè non ne fanno uso......
.
@Frate F. visto solo ora e considerando che anch'io ho tempo da perdere:
<SCRIPT LANGUAGE="Javascript"> document.oncontextmenu = disableRightClick; function disableRightClick() { return false; } var message="" function click(e) { if (navigator.appName == "Netscape" && (e.which == 3 || e.which == 2)) return false;if (document.all) { if (event.button == 3) { return false; } if (event.button == 2) { return false; } }if (document.layers) { if (e.which == 3) { return false; } } } if (document.layers) { document.captureEvents(Event.MOUSEDOWN); document.captureEvents(Event.MOUSEUP); } document.onmousedown=click document.onmouseup=click </script><style Media="Print" type="text/css"> body {display:none} </style> <!doctype html> <html> <head> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUIV="imagetoolbar" CONTENT="no"> <meta name="MSSmartTagsPreventParsing" content="TRUE"> <META HTTP-EQUIV="Expires" CONTENT="-1"> <meta charset="utf-8"> <title>Documento senza titolo</title> </head> <body ondragstart="return false" onselectstart="return false" onContextMenu="return false" > <p>Dentro al codice di questa pagina trovi un messaggio tra i tag di commento!<<br> Tu dovresti postare il codice di questa pagina e il commento<br>PROVA!!!!!</p> <!--BRAVA CI SEI RIUSCITA COMPLIMENTI!!--> </body> </html>
Ma non era questo che intendevo quando dicevo che non ha senso mettere il blocco del tasto dx