2013-08-28 31 views

Trả lời

4

No. Bạn không thể "xóa" nó. Việc chạy tập lệnh nội dung có thể có tác dụng phụ, như khai báo các biến và chức năng trên đối tượng cửa sổ, kết nối với trang nền hoặc nghe sự kiện DOM. Nếu kịch bản nội dung của bạn không có tác dụng phụ, nó giống hệt như không được tiêm.

Nếu bạn muốn tiêm lại, chỉ cần gọi executeScript với tham số mã hoặc nguồn. Nó có thể được tốt đẹp để chỉ cần xác định kịch bản tiêm của bạn như là chức năng, sau đó gọi .toString() trên các chức năng, và tiêm chúng như là chuỗi thô với đối số "mã" để executeScript. Các đối số cho các hàm này có thể được chèn vào như các chuỗi JSON, thậm chí còn thuận tiện hơn.

+0

tôi sợ đó là câu trả lời; chỉ cần một chút công việc cho tôi, tôi đoán – Azmisov

+1

Điều thú vị là nó hoạt động như thế nào. Bất cứ khi nào tôi nhập trình gỡ lỗi trong một kịch bản nội dung, cửa sổ hiển thị màu vàng và tôi thấy [VM] làm nguồn tập lệnh. Tôi tự hỏi những gì nó sẽ đòi hỏi phải thực sự thực hiện một cái gì đó mà sẽ cố gắng và loại bỏ tất cả các sự kiện nghe và bất kỳ tác dụng phụ khác có thể đã được tạo ra bởi các kịch bản nội dung. – kzahel

+0

Có thể tốt hơn để viết một tập lệnh nội dung để bạn có thể chỉ cần gọi một hàm để khởi động lại nó. –

1

Tôi cho rằng nếu bạn tự động tải các kịch bản nội dung nó có thể buộc phải refresh lại trang sử dụng javascript (window.location.reload()) lần này không tải các kịch bản nội dung

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