2010-07-12 39 views
7

tôi muốn vô hiệu hóa nhấp chuột phải trên trang web nhưng tôi muốn bật nhấp chuột phải vào văn bản. Hey wat là điều này cung cấp câu trả lời không đăng nhiều ý kiến ​​về nhấp chuột phải (lol). tôi không quan tâm nếu mọi người sẽ thấy mã nguồn của tôi, đó là nt điểm ... tôi chỉ muốn biết làm thế nào người ta có thể kích chuột phải vào chỉ trong vùng văn bản trong khi vô hiệu hóa phần còn lạivô hiệu hóa/bật nhấp chuột phải vào một phần cụ thể của nội dung html

do đó any1 ở đây biết chức năng javascript sẽ thực hiện công việc?

là mã dưới đây có thể ??

<html> 
<head> 
<title> Your Title </title> 
</head> 
<body oncontextmenu="return false;"> 
<textarea oncontextmenu="return true;"> 


</textarea> 
</body> 
</html> 

-thanx trước

-miss subanki

+1

không ai nói với bạn nó vô dụng để cấm các bấm chuột phải? nó hoàn toàn vô nghĩa và người dùng có thể bắt chước nhấp chuột phải! –

+0

tại sao oh tại sao bạn muốn làm điều đó? – galambalazs

+0

Bạn bè, tôi đang yêu cầu những nghi ngờ của tôi ở đây chỉ vì kiến ​​thức của tôi, tôi không quan tâm đến việc thực hiện nó. – subanki

Trả lời

4

Để bật nhấp chuột phải vào một phần tử cụ thể trên cơ thể trong khi vô hiệu hóa nhấp chuột phải vào phần còn lại của phần nội dung (trong html), bạn phải đặt phần tử được yêu cầu (nhấp chuột phải mà bạn muốn bật) vào iframe. Và vô hiệu hóa các nhấp chuột phải vào cơ thể chính như thế này ....

Main Body

<html> 
<head> 
<title>Your Title</title> 
</head> 
<body oncontextmenu="return false;"> 
<iframe src="frame1.html"> 
</iframe> 
</body> 
</html> 

frame1.html

<html> 
<body> 
<textarea> Your text, u can right click here </textarea> 
</body> 
</html> 

nếu bất cứ ai khác có một câu trả lời tốt hơn xin vui lòng gửi nó ở đây, thanx tất cả mọi người.

+0

Rất khó để thực hiện giải pháp này, iframe sẽ không biết về css/js trong cha mẹ mà không cần mã hóa, biểu mẫu sẽ bị hỏng vv ... –

1

gì về: http://www.dynamicdrive.com/dynamicindex9/noright2.htm

Nhưng không có nhiều điểm kích chuột phải vô hiệu hóa, thật dễ dàng để vượt qua và nhận được nội dung.

+0

tôi đã truy cập trang web đó trước khi đăng ở đây, nhưng tôi không thể tìm ra cách để kích hoạt quyền clck trên textarea trong khi vẫn giữ nhấp chuột phải trong phần cơ thể bị vô hiệu hóa – subanki

0

Bạn có thể vô hiệu hóa nhấp chuột phải bằng javascript để giữ cho những người trung thực thành thật. Nhưng những người không trung thực có thể dễ dàng đảo ngược điều này. Nếu bạn quan tâm đọc trên "oncontextmenu" tài sản của các yếu tố html.

+0

Tôi đã thực sự đi đến độ dài lớn để có được nội dung được bảo vệ bởi các bức tường javascript, không phải vì tôi muốn nội dung , nhưng vì tôi muốn thử thách. Có một số phương pháp thực sự thú vị để ẩn hình ảnh, như ẩn chúng sau hình ảnh trong suốt, hoặc chỉ tải xuống nếu chúng được truy cập đúng thứ tự. Yêu thích của tôi là, vẽ các hình ảnh bằng cách sử dụng một loạt các đối tượng canvas và các bảng định kiểu để hình ảnh trong bộ nhớ cache được tranh giành. Tất cả các phương pháp này có thể bị đánh bại mặc dù cho ai đó muốn giết vài giờ. –

+0

i dont hav vấn đề với những người khác tìm mã nguồn của tôi, u có thể chỉ cho tôi hw nó có thể được thực hiện ?? – subanki

+0

"Tôi thực sự đã đạt đến độ dài lớn để có được nội dung được bảo vệ bởi tường javascript, không phải vì tôi muốn nội dung, nhưng vì tôi muốn thử thách" ... cool i like tat thái độ – subanki

1

http://www.quirksmode.org/js/events_properties.html#button có lẽ là tất cả thông tin bạn cần. Bạn nhận được sự kiện nhấp chuột và kiểm tra xem mã khóa đó là gì. Sau đó chọn trả về false hoặc true tùy thuộc vào nơi nhấp chuột đến.

+0

thanx buddy, tôi sẽ cung cấp cho nó một thử – subanki

1

Tôi đã tìm thấy một giải pháp:

document.superListener = document.addEventListener; 
document.addEventListener = function(type, listener, useCapture){ 
if(type != 'contextmenu') 
    document.superListener(type, listener, !!useCapture); 
}; 

từ đây: https://stackoverflow.com/a/3009161/3649420

Các vấn đề liên quan