Tôi muốn tắt nhấp chuột phải trên trang HTML. Tôi có một trang nơi người dùng phải nhập chi tiết. Tôi không muốn người dùng thấy menu được hiển thị bằng cách nhấp chuột phải. Thay vào đó tôi muốn hiển thị một menu tùy chỉnh. Tôi biết có một số plugin có sẵn để làm điều đó. Nhưng yêu cầu của tôi không cần bất kỳ plugin nào.Làm thế nào để vô hiệu hóa chuột phải bấm vào một trang web?
Trả lời
Đó là không chuyên nghiệp, dù sao này sẽ làm việc với kích hoạt javascript:
document.oncontextmenu = document.body.oncontextmenu = function() {return false;}
Bạn cũng có thể muốn hiển thị một thông điệp tới người dùng trước khi trả về false. Tuy nhiên tôi phải nói rằng điều này không nên được thực hiện thường bởi vì nó giới hạn tùy chọn người dùng mà không giải quyết vấn đề (trong thực tế, menu ngữ cảnh có thể được kích hoạt lại một cách dễ dàng.).
bài viết sau tốt hơn giải thích tại sao này không nên được thực hiện và những hành động khác có thể được thực hiện để giải quyết các vấn đề có liên quan phổ biến: http://articles.sitepoint.com/article/dont-disable-right-click
Hơn nữa, đây không phải là tất cả và kết thúc tất cả các giải pháp, họ chỉ có thể vô hiệu hóa js và hey presto. – Kezzer
Tại sao không chỉ 'document.oncontextmenu = function() {return false; } '? –
Bạn có thể sử dụng sự kiện oncontextmenu để thực hiện việc này.
Nhưng nếu người dùng tắt javascript thì bạn sẽ không thể xử lý việc này.
window.oncontextmenu = function() {
return false;
}
sẽ tắt trình đơn nhấp chuột phải.
Thứ nhất, nếu bạn đang làm điều này chỉ để ngăn chặn những người xem tại nguồn của trang của bạn - nó sẽ không hoạt động vì chúng luôn có thể sử dụng phím tắt để xem nó.
Thứ hai, bạn sẽ phải sử dụng JavaScript để thực hiện việc này. Nếu người dùng đã tắt JS, bạn không thể ngăn nhấp chuột phải.
Điều đó nói rằng, thêm thẻ này vào thẻ body của bạn để vô hiệu hóa các nhấp chuột phải.
<body oncontextmenu="return false;">
<body oncontextmenu="return false;">
hoạt động với tôi trong Google Chrome. Không chắc chắn về các trình duyệt khác.
Lưu ý, tất cả những gì ai đó phải làm là tắt JavaScript để xem menu nhấp chuột phải.
Xin đừng làm điều đó, nó rất khó chịu.
Trình đơn bên phải có lý do và cần được để ở đó. Nhiều tiện ích mở rộng của trình duyệt thêm các mục nhập vào trình đơn nhấp chuột phải và người dùng sẽ có thể sử dụng nó trong bất kỳ trang nào mà anh truy cập. Ngoài ra, bạn có thể sử dụng tất cả chức năng của menu nhấp chuột phải theo các cách khác (phím tắt, menu trình duyệt, v.v.) để chặn menu nhấp chuột phải có tác dụng duy nhất gây phiền nhiễu cho người dùng.
PS: Nếu thực sự bạn không thể cưỡng lại sự thôi thúc chặn ít nhất là không đặt cửa sổ bật lên có nội dung "không cho phép nhấp chuột phải".
-1: Trong khi điều này làm cho một số điểm tốt, nó không trả lời câu hỏi vì vậy nên có một bình luận. – Quentin
@ Dorav Dorward: Nó thực sự trả lời câu hỏi. Tôi nói rằng mặc dù ông có thể chặn sự xuất hiện của trình đơn nhấp chuột phải không có cách nào để thực sự chặn ** chức năng của nó **, vì chúng có thể truy cập theo những cách khác.Chặn menu nhấp chuột phải là thực hành không tốt, vì vậy tôi đã tìm thấy câu trả lời tốt hơn để giải thích lý do tại sao anh ấy không nên làm như vậy. – nico
Có rất nhiều ví dụ của việc này có thể được tìm thấy qua Google
Tuy nhiên, người dùng có thể tắt Javascript để ngăn chặn "tính năng" này rất khó chịu. Tôi nghĩ bạn nên thực sự nghĩ về điều này trước khi thực hiện nó. Nó không thực sự bảo vệ nội dung của bạn (nếu đó là những gì bạn đang cố gắng đạt được).
Có một bài viết here minh họa điều này thật khó chịu và vô nghĩa.
Hãy thử điều này: viết dưới mã trên cơ thể & cảm thấy sự kỳ diệu :)
body oncontextmenu="return false"
Bạn có thể sử dụng Javascript để chặn click chuột phải. Here là một tập lệnh để chặn nhấp chuột phải trên trang web.
Bạn có thể làm như vậy với Javascript và/hoặc một thuộc tính HTML (mà thực sự là một xử lý sự kiện javascript anyway) như mô tả ở đây: http://www.codeproject.com/KB/aspnet/Disabling_the_right_click.aspx
<script language="javascript">
document.onmousedown=disableclick;
status="Right Click Disabled";
Function disableclick(event)
{
if(event.button==2)
{
alert(status);
return false;
}
}
</script>
và
<body oncontextmenu="return false">
...
</body>
// Disable ngay nhấp vào tập lệnh qua mã tập lệnh java
<script language=JavaScript>
//Disable right click script
var message = "";
///////////////////////////////////
function clickIE() {
if (document.all) {
(message);
return false;
}
}
function clickNS(e) {
if (document.layers || (document.getElementById && !document.all)) {
if (e.which == 2 || e.which == 3) {
(message);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown = clickNS;
} else {
document.onmouseup = clickNS;
document.oncontextmenu = clickIE;
}
document.oncontextmenu = new Function("return false")
</script>
window.oncontextmenu = function() {
return false;
}
có thể giúp bạn.
- 1. Bấm chuột phải vào bảng thay đổi bị vô hiệu hóa trong SQL Server Management Studio
- 2. Làm thế nào để vô hiệu hóa nút bấm bánh xe chuột?
- 3. Làm thế nào để bạn vô hiệu hóa nhấp chuột phải bên trong một TextBox
- 4. vô 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
- 5. Làm thế nào để vô hiệu hóa Tomcat trang chủ
- 6. Làm thế nào để vô hiệu hóa ctrl + bấm vào để chọn văn bản trong IE 10?
- 7. Làm thế nào để bấm vào một nút trên một trang web ASP.NET lập trình?
- 8. Vô hiệu hóa nhấp chuột phải trong silverlight
- 9. Làm thế nào để vô hiệu hóa hiệu ứng Di chuột và Ngói của ListView?
- 10. Làm thế nào để vô hiệu hóa một nút sau khi nhấp chuột đầu tiên
- 11. Làm thế nào để vô hiệu hóa vỏ (hiệu ứng di chuột) trong turn.js?
- 12. Làm cách nào để vô hiệu hóa Nhấp vào WebView?
- 13. Nhấp chuột phải vào Div (hộp thông tin) bị vô hiệu hóa. Làm cách nào để kích hoạt nó
- 14. C# Làm thế nào để vô hiệu hóa một phím
- 15. Làm thế nào để vô hiệu hóa google maps kéo
- 16. Làm thế nào để vô hiệu hóa OUTFILE và INFILE?
- 17. JQuery JEditable - Làm thế nào để vô hiệu hóa khi chỉnh sửa nhấp chuột
- 18. Làm thế nào để vô hiệu hóa UIButton nổi bật trên nhấp chuột?
- 19. Có cách nào để vô hiệu hóa panning trên máy tính bảng - trang web không?
- 20. Vô hiệu hóa nhấp chuột phải vào "Silverlight" trong hộp tổ hợp
- 21. Làm thế nào để vô hiệu hóa Ajax trong jQuery Mobile trước khi tải trang?
- 22. Vô hiệu hóa nhấp chuột phải vào hình ảnh bằng cách sử dụng jquery
- 23. Làm thế nào để vô hiệu hóa rìa trong Emacs?
- 24. Làm thế nào để vô hiệu hóa nút trong UIActionSheet?
- 25. Làm thế nào để vô hiệu hóa cảnh báo #pragma?
- 26. Làm thế nào để vô hiệu hóa bộ đệm sâu?
- 27. Làm thế nào để vô hiệu hóa javax.swing.JButton trong java?
- 28. Làm thế nào để vô hiệu hóa trang web nginx mặc định khi sử dụng Chef và Vagrant?
- 29. Làm thế nào để vô hiệu hóa trang quản trị solr
- 30. Làm thế nào để vô hiệu hóa Django/mod_WSGI Trang Caching
Bảo mật bằng tối tăm? –
Sự cố với menu là gì? Nó thuộc về người dùng nên để nó cho anh ta. * Chỉ cần tưởng tượng, người dùng không hiểu một từ và muốn sử dụng một số dịch vụ dịch mà có thể truy cập vào menu ngữ cảnh. * –
Tại sao bạn muốn làm điều này? Nhiều người dùng cảm thấy khó hiểu nếu trang không hoạt động như tất cả các trang web khác. –