2013-06-21 116 views
0

的名字我不知道這是可能的,但我要做到以下幾點:使用URL名稱設置圖像

我有網頁,名爲1.HTML,2.HTML,3。 HTML等。現在我有1.HTML以下代碼:

<object width="100%" data="1.svg" type="image/svg+xml"> 

和2.HTML,我會得到2.svg。等等。現在我想製作像這樣的100頁的東西,我想知道是否可以使用javascript或jquery自動執行此操作?所以像這樣:

<object width="100%" data="[here some script that get the name of htm file].svg" type="image/svg+xml"> 

任何想法?

+0

是的,你可以得到網頁的名稱('window.location')則將其分解,提取名稱並設置對象的屬性。 –

回答

1

試試這個:

jQuery的

var url = document.location.pathname; 
url = url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf(".")); 
$('object').attr('data', url + '.svg'); 

的Javascript

var url = document.location.pathname; 
url = url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf(".")); 
document.getElementsByTagName('object')[0].setAttribute('data',url + '.svg'); 

或者這樣:

PHP

<object data="<?php echo basename(__FILE__, ".htm"); ?>.svg"></object> 
+0

我試圖這樣:<!DOCTYPE HTML> \t \t \t 第1部分 \t \t <鏈路HREF = 「stylesheet.css中」 的rel = 「樣式表」 類型= 「文本/ CSS」/> \t \t \t \t \t \t \t \t

\t 但這不工作 – Kasper

+0

你得到一個錯誤? – musicnothing

+0

不,我只是得不到任何輸出。 – Kasper

1

使用

var currentDoc = document.location.pathname 
var currentSVG = currentDoc.match(/\d+\) + ".svg"; 
+0

這將工作,但你也需要剝離你的.htm擴展.. –

+0

@TobiasHagenbeek謝謝。更新了答案。 – raam86