javascriptte tuş engelleme var mı?

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Kaptan
Üye
Mesajlar: 395
Kayıt: 01 Tem 2005 04:02

javascriptte tuş engelleme var mı?

Mesaj gönderen Kaptan »

Selamlar.
Açılan pencerede bazı tuşları iptal ettirmek istiyoruz.Mesela F5 tuşuna basıldığında refresh yapmayacak.Bu yapılabilir mi?Nasıl yapılabilir?Kod olan var mı?
teşekkürler.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

İnternet Explorer için Mozillada kod çalışmayacaktır...

Kod: Tümünü seç

<script language=JavaScript>

// internet explorer için:
if (document.all)
{	 	
	document.onkeydown = function ()
	{
	    var key_f5 = 116; // 116 = F5		
		if (key_f5==event.keyCode)
		{
			event.keyCode=0;
			alert ("F5 tuşu iptal!");
		}
		return false;
	}
}
</script>
Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Aklıma Gelmişken

Javascript Key kodları

Kod: Tümünü seç

backspace 	8
tab 	9
enter 	13
shift 	16
ctrl 	17
alt 	18
pause/break 	19
caps lock 	20
escape 	27
page up 	33
page down 	34
end 	35
home 	36
left arrow 	37
up arrow 	38
right arrow 	39
down arrow 	40
insert 	45
delete 	46
0 	48
1 	49
2 	50
3 	51
4 	52
5 	53
6 	54
7 	55
8 	56
9 	57
a 	65
b 	66
c 	67
d 	68
e 	69
f 	70
g 	71
h 	72
i 	73
j 	74
k 	75
l 	76
m 	77
n 	78
o 	79
p 	80
q 	81
r 	82
s 	83
t 	84
u 	85
v 	86
w 	87
x 	88
y 	89
z 	90
left window key 	91
right window key 	92
select key 	93
numpad 0 	96
numpad 1 	97
numpad 2 	98
numpad 3 	99
numpad 4 	100
numpad 5 	101
numpad 6 	102
numpad 7 	103
numpad 8 	104
numpad 9 	105
multiply 	106
add 	107
subtract 	109
decimal point 	110
divide 	111
f1 	112
f2 	113
f3 	114
f4 	115
f5 	116
f6 	117
f7 	118
f8 	119
f9 	120
f10 	121
f11 	122
f12 	123
num lock 	144
scroll lock 	145
semi-colon 	186
equal sign 	187
comma 	188
dash 	189
period 	190
forward slash 	191
grave accent 	192
open bracket 	219
back slash 	220
close braket 	221
single quote 	222
Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kaptan
Üye
Mesajlar: 395
Kayıt: 01 Tem 2005 04:02

Mesaj gönderen Kaptan »

Teşekkürler hocam.
Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege »

firefox kullanıyorsnaız bunların hepsini iptal ettirebiliyorsunuz :) fazla bel bağlamayın bu yönteme :)
.-.-.-.-.-.-.-. ^_^
Kaptan
Üye
Mesajlar: 395
Kayıt: 01 Tem 2005 04:02

Mesaj gönderen Kaptan »

mege yazdı:firefox kullanıyorsnaız bunların hepsini iptal ettirebiliyorsunuz :) fazla bel bağlamayın bu yönteme :)
online sınavda nasıl bir yöntem izleyebiliriz ki?
izinleri kontrol edip izinler varsa bu kodu kullandırabiliriz . F5 yapılınca zaman hep ilk baştan başlıyor.belki sessiona yazzdırıp ondan aldırılabilir.veya refresh iptal edilebilir.(ama nasıl bulamadım?)

Teşekkürler.
mulus
Üye
Mesajlar: 67
Kayıt: 30 May 2005 10:42
Konum: Bursa
İletişim:

Mesaj gönderen mulus »

Session la :)

Aşşağıdaki kod işini görecektir.

Kod: Tümünü seç

<?php
	session_start();
	if (!$_SESSION['time']){
		$_SESSION['time'] = time();
	}

	$start = $_SESSION['time'];
	$stop = 3600; //1 saat

	if (($start+$stop) <= time()){
		$point = 0;
	}else {
		$point = ($start+$stop) - time();
	}
	echo $point;
?>
<html>
	<head>
		<SCRIPT language="JavaScript">
			function t(){
				var f = document.frm;
				v=new Date();
				n=new Date();
				ss=pp;
				s=ss-Math.round((n.getTime()-v.getTime())/1000.);
				m=0;h=0;
				if(s<0){
				  f.sayac.value="Tamamlandi";
				}else{
				  if(s>59){
					m=Math.floor(s/60);
					s=s-m*60
				  }
				  if(m>59){
					h=Math.floor(m/60);
					m=m-h*60
				  }
				  if(s<10){
					s="0"+s
				  }
				  if(m<10){
					m="0"+m
				  }
				  f.sayac.value=h+":"+m+":"+s+""
				}
				pp=pp-1;
				window.setTimeout("t();",999);

			}


		</SCRIPT>
	</head>
	<body>
		<form name='frm'>
			<input type='text' name='sayac' value=''>
			<SCRIPT language="JavaScript">
			   pp="<?=$point?>";
			  t();
			</SCRIPT>
		</form>
	</body>
</html>
Session serverda kaldığı sürece browserı kapatsa bile saymaya devam eder. saydiracagin zaman uzunsa o session i bi sekilde korucaksin,artik php.ini den session zamaninimi uzatirsin, sessionu db yemi atarsin bilmem artik :wink: .. Kolay gelsin.
Kaptan
Üye
Mesajlar: 395
Kayıt: 01 Tem 2005 04:02

Mesaj gönderen Kaptan »

Hocam tamamdır.Verdiğin kodda problem yok çalışıyor.saolasın
Fakat bir sorun var.
Warning: Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\dene.php:2) in c:\apache\htdocs\dene.php on line 3
hatası veriyor.line 3 de session_start(); var.Herşey çalışıyor fakat üstte bu hatayı veriyor o kadar.
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Kod: Tümünü seç

session_start();
sayfadaki kodların en üstüne al.
DeveloperToolKit

..::|YeşilMavi|::..
Cevapla