我想構建一個內容編輯器。這個contenteditor會將一個HTML文檔(帶有JavaScript)加載到例如#result元素中。問題在於,如果在這個HTML元素中有例如$("input").hide();
,那麼我的所有輸入都會在整個頁面中消失,所以不僅僅在加載的HTML(我的目標)中。如何沙盒div元素?
我想與編輯器做的是當客戶點擊,它表示數據庫的東西一個元素,該元素的信息將彈出,用戶將能夠編輯。 (因此,如果用戶將鼠標懸停與類「接觸型」(這是在數據庫中的一個形式中,連接到加載的頁)的新窗口將有關此特定形式的元素信息彈出。
此外,我不能完全禁用Javascript,因爲加載的HTML可能包含Javascript的樣式等。
我的目標:刪除Javascript,當用戶加載HTML文件時可能會很煩人。此外,刪除了Javascript功能來編輯之外它自己的DOM somehthing的能力。
PS我開賭這種變通方法就像爲此使用iframe,但我希望能夠將鼠標懸停在與它們交互的元素上。
編輯:看來這個問題可能有點過於寬泛,看着評論。 我的問題摘要:如何禁用特定div的alert()以及如何創建沙箱,以便div內的代碼只能從該div內部更改元素。
請張貼一些代碼。以及你正在面臨的問題。 –
你不需要在這種情況下沙盒這個div。尋找SQL注入,這是完全一樣的..至少是原因。所以要避免這種情況,請使用用於避免sql注入的方法。 –
另外,當你捕捉到這個可編輯的內容時,將所有特殊字符轉換爲它們各自的html實體.. google for html entities –