Tôi không tin rằng có một tiêu chuẩn dựa trên cách để làm điều này. Một số trình duyệt nhất định có thể cung cấp API của riêng họ để thực hiện điều này nhưng tôi nghi ngờ.
Điều đó đang được nói rằng tôi đã hoàn thành hiệu ứng này trong quá khứ thông qua một số thủ thuật CSS. Về cơ bản, CSS của bạn xác định mọi phép đo (chiều rộng, chiều cao, lề, đệm, kích thước phông chữ, v.v.) thay cho px. Điều này về cơ bản làm cho kích thước của tất cả mọi thứ phụ thuộc vào kích thước phông chữ mặc định của tài liệu. Sau đó, để phóng to bạn thay đổi kích thước phông chữ của thẻ body để làm cho mọi thứ nhỏ hơn hoặc lớn hơn. Nếu bạn thực hiện điều này một cách cẩn thận, hiệu ứng sẽ trông giống như khi người dùng phóng to bằng trình duyệt của họ.
Để làm cho cuộc sống dễ dàng hơn khi thực hiện việc này, tôi thích sử dụng biểu định kiểu đặt lại CSS đặt 1em thành 10px. Bằng cách đó, nếu bạn muốn một div được rộng 200px, bạn chỉ cần đặt nó là 20em. Bạn có thể thực hiện việc này bằng cách đặt kích thước phông chữ cơ thể thành 62,5% trong bảng định kiểu lại CSS của bạn. Vì hầu hết các trình duyệt đều có kích thước phông chữ mặc định là 16px và do đó 1em = 16px, 10px là 62,5%.
Tôi hy vọng điều này sẽ giúp ích rất nhiều, nhưng việc sử dụng em thay vì px đã giúp tôi vô số cách khi làm việc với HTML và CSS.
tôi loại bỏ các 'javascript-events' thẻ như câu hỏi này không có một khía cạnh sự kiện. –
có thể trùng lặp của [Thay đổi mức thu phóng của trình duyệt] (http://stackoverflow.com/questions/1055336/changing-the-browser-zoom-level) – derobert
Tôi đã có thể viết một cái gì đó hoạt động cho IE, Chrome và FF: http://stackoverflow.com/questions/4386760/calling-keyevent-from-mouse/4386873#4386873 –