2013-02-22 61 views
2

我想弄清楚這個問題後:CSS:在IE7,jQuery的模式

我有一個類我的菜單後,顯示的圖像和它的工作好後,我用這種方法工作:

:after and :before css pseudo elements hack for IE 7

我補充說,有提到的jQuery:

http://jquery.lukelutman.com/plugins/pseudo/

在本地運行良好,但是當我在服務器中添加它時,它在主頁(IE7)url-homepage/images/image.jpg上運行良好。

...但是,當我去到另一個頁面僞這樣的路徑:url-homepage/about/images/image.jpg ...我怎麼能防止這..我假設它的模式js ..

var patterns = { 
    text: /^['"]?(.+?)["']?$/, 
    url: /url\(["']?(.+?)['"]?\)$/ 
}; 

function clean(content) { 
    if(content && content.length) { 
     var text = content.match(patterns.text)[1], 
      url = text.match(patterns.url); 
     return url ? '<img src="' + url[1] + '" />': text; 
    } 
} 

任何人都知道如何讓它只能去一個路徑(/路徑/圖像/)?

+1

Modernizr的只能檢測是否瀏覽器支持某些功能。它實際上並沒有使舊的瀏覽器「現代化」。這就是polyfills所做的。 – Blazemonger 2013-02-22 16:16:31

+1

我假設你所有的圖像都存儲在'root/images'中,所以你給你的例子需要退出。你可以用'../ images /'或'/ images /'從根開始,然後獲取圖像。用正則表達式我沒那麼好。你做到了嗎? – defaultNINJA 2013-02-22 16:18:22

+0

由於大火是有道理的.. – Riskbreaker 2013-02-22 16:19:58

回答

4

將是有趣的,看看你的CSS,但缺乏的是我想你的內容應改爲:

url(/images/image.jpg) 

開始與斜線使路徑開始在服務器的根目錄(而不是相對於你當前的文件夾)。

編輯:那麼,總之我建議以下樣式:

#yourElementId, #yourElementId:after { 
    after: url(/images/image.jpg);  /* IE7 polyfill */ 
    content: url(/images/image.jpg); /* css for other browsers */ 
} 
+0

啊CSS wasnt連看我有它: '.TOP-NAV李一:後{後:網址(「圖像/ image.jpg文件」);內容:網址( 「圖像/ image.jpg文件」);}' – Riskbreaker 2013-02-28 16:04:24

+0

OMG太感謝你了,就是這樣! – Riskbreaker 2013-02-28 16:08:57

+0

我的榮幸:-) – marty 2013-02-28 21:28:03