01/10/2018, 15:38

Hỏi cách viết tool inspector giống dev-tool trên các trình duyệt

Như tiêu đề đã nói. Em đang cần viết một tool có chức năng tương tự chức năng inspector (kiểm tra phần tử) trên các trình duyệt hiện nay hỗ trợ. Viết bằng bất kỳ ngôn ngữ nào có thể viết được cũng được ạ, nếu bằng JS thì càng tốt ạ. Mong các anh biết hoặc có hướng thì gợi ý em viết với ạ.

Vuio viết 17:52 ngày 01/10/2018

Mỗi trình duyệt có một devtool khác nhau. Chromium devtools tất nhiên khác với firefox devtool.
Theo mình biết devtool của chrome được xây dựng cùng với chromium luôn chứ không phải như addon thêm vào nên muốn viết một cái tương tự là không thể.

*grab popcorn* viết 17:53 ngày 01/10/2018

Lắng nghe sự kiện mouseoever và mouseout là được
Ví dụ = JS (jQuery)
https://jsfiddle.net/d4waubhd/
Chưa tìm cách highlight được margin do mình chưa search ra và còn hơi lỗi chút.

Ngoài ra bạn tham khảo thêm: https://github.com/firebug/firebug

Van Toan viết 17:43 ngày 01/10/2018

Mình chỉ cần viết một chức năng có trong dev-tool là inspectort thôi. Khi click sẽ lấy được thông tin của phần tử, sự kiện của phần tử đều bị chặn hết.

Vuio viết 17:45 ngày 01/10/2018

À, vậy mà cứ tưởng làm một cái devtool thứ 2. Sorry.

Van Toan viết 17:49 ngày 01/10/2018

Nhưng cách của bác là mình thêm mã vào trong trang. Kiểu mình là không tác động gì tới trang đó, nhưng vẫn thực hiện được chức năng như trên.

*grab popcorn* viết 17:46 ngày 01/10/2018

À bạn muốn làm như trang này đúng ko
https://www.youtube.com/watch?v=HJI1qzn1Od4

Cái parsehub là web-browser rồi. Nên bạn có thể tùy chỉnh nó và làm một devtool tương tự như Google hay Firefox rồi thêm tính năng clawer vào. thằng parsehub này build trên nền firefox. Nên nó lợi dụng devtool của firefox thêm tính năng clawer vào rồi tùy chỉnh giao diện lại.

Van Toan viết 17:45 ngày 01/10/2018

Mình đang thực hiện phần phần tính năng giống Parsehub. Nhưng bí phần chọn phần tử quá . Bác có document nào nói về nói ko “Nên nó lợi dụng devtool của firefox thêm tính năng clawer vào rồi tùy chỉnh giao diện lại.” cho mình xin với

Van Toan viết 17:45 ngày 01/10/2018

Hoặc chức năng tương tự như trang dexi.io

*grab popcorn* viết 17:42 ngày 01/10/2018
  1. Như parsehub, thì bạn phải tự đọc source của firefox or chrome rồi tự custom. Vì cái này thường ko có document.
  2. Như dexi.io, tìm hiểu sơ thì mình thấy bản chất của nó là dùng backend tải html về. Sau đso đưa lên cho client + inject script vào thông qua blob và iframe.
Van Toan viết 17:50 ngày 01/10/2018

blob

kỹ thuật này là gì vậy bác. Mình chỉ có biết blob trong database thôi.

*grab popcorn* viết 17:47 ngày 01/10/2018

Bạn tham khảo nè:

https://developer.mozilla.org/en-US/docs/Web/API/Blob
https://www.javascripture.com/Blob

Bài liên quan
0