出於某種原因,它似乎像IE9(我相信IE8過,但不知道),在我的內容的途中注入IE注入VBScript變量中呈現的中間,造成畸形的HTML
<SCRIPT LANGUAGE=VBScript>on error resume next pluginFound = IsObject(CreateObject("DIFFERENT PLUGIN EVERY TIME"))
沒有任何關於周圍的情況。這意味着它被添加到屬性的中間,或者在一些JavaScript的中間,導致HTML格式不正確並導致各種問題。
這發生在具有不同插件的多臺計算機上,因此它不是特定於計算機的。而且這也不一致:違規腳本注入的位置不同,違規腳本也不盡相同。有時你會得到幾個頁面加載沒有問題,然後你會得到破碎的HTML。
我的頁面使用了相當數量的JS,但沒有瘋狂。目前它正在使用jQuery,Google Maps,Bootstrap,Google Tag Manager以及用他們自己的小JS片段加載一對Twitter,Google +和Facebook Iframe。所以,有一些異步回調發生,但我不認爲這會影響瀏覽器如何呈現DOM,以及何時決定注入插件代碼。
如果您重新加載http://www.rew.ca/properties/search/839721足夠的次數,則可以看到問題。如果您滾動到頁面底部,您會看到原始的JSON,或者有時候會在頁面中間顯示一些隨機的HTML片段(因爲標籤不匹配)。
任何想法,爲什麼這些腳本被任意注入以及如何解決該問題?
感謝
[更新] 這裏得到包含在HTML內容中間的script標籤的另一個例子:
我不能用任何數量的刷新重現這一點。你有沒有試過瀏覽IE瀏覽器禁用插件的網站? –
即使添加了Flash和Adobe PDF鏈接助手,我也無法在虛擬機上的W7上的IE9上重現它。但在其他幾臺機器上(一些基本安裝,只有「工廠」插件)仍然存在。不知道它是否發生與禁用插件,但我會試一試。但是,我不能要求用戶禁用插件來訪問我的網站。 –