2016-07-29 64 views
0

我們有一個富文本編輯器的頁面。如果正在編輯的內容包含圖片,且用戶正在使用Firefox並且他們安裝了Pinterest瀏覽器按鈕,則以下HTML將被添加到編輯器中富文本內容的末尾。您可以使用編輯器工具欄中的Source按鈕在此處看到它,並且在提交表單時,添加的HTML將包含在其中併發送到服務器。如何防止Firefox擴展修改頁面?

<p><span style="border-radius: 2px; text-indent: 20px; width: auto; padding: 0px 4px 0px 0px; text-align: center; font: bold 11px/20px &quot;Helvetica Neue&quot;,Helvetica,sans-serif; color: rgb(255, 255, 255); background: rgb(189, 8, 28) url(&quot;data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzBweCIgd2lkdGg9IjMwcHgiIHZpZXdCb3g9Ii0xIC0xIDMxIDMxIj48Zz48cGF0aCBkPSJNMjkuNDQ5LDE0LjY2MiBDMjkuNDQ5LDIyLjcyMiAyMi44NjgsMjkuMjU2IDE0Ljc1LDI5LjI1NiBDNi42MzIsMjkuMjU2IDAuMDUxLDIyLjcyMiAwLjA1MSwxNC42NjIgQzAuMDUxLDYuNjAxIDYuNjMyLDAuMDY3IDE0Ljc1LDAuMDY3IEMyMi44NjgsMC4wNjcgMjkuNDQ5LDYuNjAxIDI5LjQ0OSwxNC42NjIiIGZpbGw9IiNmZmYiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxIj48L3BhdGg+PHBhdGggZD0iTTE0LjczMywxLjY4NiBDNy41MTYsMS42ODYgMS42NjUsNy40OTUgMS42NjUsMTQuNjYyIEMxLjY2NSwyMC4xNTkgNS4xMDksMjQuODU0IDkuOTcsMjYuNzQ0IEM5Ljg1NiwyNS43MTggOS43NTMsMjQuMTQzIDEwLjAxNiwyMy4wMjIgQzEwLjI1MywyMi4wMSAxMS41NDgsMTYuNTcyIDExLjU0OCwxNi41NzIgQzExLjU0OCwxNi41NzIgMTEuMTU3LDE1Ljc5NSAxMS4xNTcsMTQuNjQ2IEMxMS4xNTcsMTIuODQyIDEyLjIxMSwxMS40OTUgMTMuNTIyLDExLjQ5NSBDMTQuNjM3LDExLjQ5NSAxNS4xNzUsMTIuMzI2IDE1LjE3NSwxMy4zMjMgQzE1LjE3NSwxNC40MzYgMTQuNDYyLDE2LjEgMTQuMDkzLDE3LjY0MyBDMTMuNzg1LDE4LjkzNSAxNC43NDUsMTkuOTg4IDE2LjAyOCwxOS45ODggQzE4LjM1MSwxOS45ODggMjAuMTM2LDE3LjU1NiAyMC4xMzYsMTQuMDQ2IEMyMC4xMzYsMTAuOTM5IDE3Ljg4OCw4Ljc2NyAxNC42NzgsOC43NjcgQzEwLjk1OSw4Ljc2NyA4Ljc3NywxMS41MzYgOC43NzcsMTQuMzk4IEM4Ljc3NywxNS41MTMgOS4yMSwxNi43MDkgOS43NDksMTcuMzU5IEM5Ljg1NiwxNy40ODggOS44NzIsMTcuNiA5Ljg0LDE3LjczMSBDOS43NDEsMTguMTQxIDkuNTIsMTkuMDIzIDkuNDc3LDE5LjIwMyBDOS40MiwxOS40NCA5LjI4OCwxOS40OTEgOS4wNCwxOS4zNzYgQzcuNDA4LDE4LjYyMiA2LjM4NywxNi4yNTIgNi4zODcsMTQuMzQ5IEM2LjM4NywxMC4yNTYgOS4zODMsNi40OTcgMTUuMDIyLDYuNDk3IEMxOS41NTUsNi40OTcgMjMuMDc4LDkuNzA1IDIzLjA3OCwxMy45OTEgQzIzLjA3OCwxOC40NjMgMjAuMjM5LDIyLjA2MiAxNi4yOTcsMjIuMDYyIEMxNC45NzMsMjIuMDYyIDEzLjcyOCwyMS4zNzkgMTMuMzAyLDIwLjU3MiBDMTMuMzAyLDIwLjU3MiAxMi42NDcsMjMuMDUgMTIuNDg4LDIzLjY1NyBDMTIuMTkzLDI0Ljc4NCAxMS4zOTYsMjYuMTk2IDEwLjg2MywyNy4wNTggQzEyLjA4NiwyNy40MzQgMTMuMzg2LDI3LjYzNyAxNC43MzMsMjcuNjM3IEMyMS45NSwyNy42MzcgMjcuODAxLDIxLjgyOCAyNy44MDEsMTQuNjYyIEMyNy44MDEsNy40OTUgMjEuOTUsMS42ODYgMTQuNzMzLDEuNjg2IiBmaWxsPSIjYmQwODFjIj48L3BhdGg+PC9nPjwvc3ZnPg==&quot;) no-repeat scroll 3px 50%/14px 14px; position: absolute; opacity: 0.85; z-index: 8675309; display: none; cursor: pointer; border: medium none; top: 520px; left: 1368px;">Save</span></p>

嵌入背景圖像是Pinterest的圖標。這發生在Windows和Mac上,但僅限於Firefox。在Chrome或Safari中不會發生。我無法測試IE11,因爲按鈕無法安裝。

有沒有辦法阻止插件修改富文本編輯器內容?或者,有沒有辦法告訴pinterest插件專門脫離編輯器甚至只是頁面?

+1

的可能的複製[如何阻止擴展/附加功能像grammarly怎麼上CONTENTEDITABLE編輯](http://stackoverflow.com/questions/37444906/how-to-stop-extensions-add-ons-like-語法上可信的編輯) – the8472

回答

0

簡短的回答是,您的不能阻止Firefox插件修改您的網頁,如果擴展需要這樣做。 Firefox附加組件以瀏覽器的特權運行。因此,他們可以完全控制顯示內容,顯示方式,甚至顯示您的頁面。您的問題在本質上與「我能否阻止Firefox瀏覽器以Firefox想要顯示頁面的方式顯示我的頁面?」相同。

你必須接受這樣一個事實,即它會去做任何事情。如果您希望您的網站在安裝了此擴展程序的Firefox瀏覽器中運行,則必須解決該擴展程序對您的網站所做的任何操作。

有多種可能的戰略(不是全包列表):

  1. 聯繫Pinerest,並告知他們這個問題。這聽起來像加載項對您的網站造成了傷害。這可能不是故意的。讓他們提交一個錯誤。如果它影響到您的網站,則可能是 影響他人。
  2. 讓您的服務器檢測輸入中的附加HTML代碼,並自動將其刪除。
  3. 爲您的網頁嘗試使用不同的HTML結構來嘗試找到導致擴展的代碼,從而將代碼放入發送到服務器的數據中。

    如果是我,我會仔細看看Pinterest插件的源代碼。與大多數Firefox附加組件一樣,它也是普通的JavaScript。您應該能夠確定它正在使用的標準來選擇將HTML代碼插入的位置。一旦你知道了,設計你的頁面應該是相當容易的,這樣插件不會干擾你關心的事情。爲了節省您的搜索空間,加載項的URL當前爲here。您應該使用「另存爲鏈接」將該文件保存到某個地方。然後將.xpi文件擴展名更改爲.zip。然後您應該能夠從軟件包中提取附加組件的所有文件。這是一個正常的bootstrapped加載項。

+0

1。試過這個,但他們的聯繫表格不會讓我提交(也不讓我選擇合適的產品)。我會再試一次,也許不包括html。 2.這是我的後備,但希望有更好的事情,因爲如果他們改變他們的html格式,它可能會中斷。現在看看,希望他們有一些無證的keepaway標籤.. –