2014-11-21 62 views
1

我正在使用jquery UI選項卡。 (jQuery的1.11.1,jQuery UI的1.11.1)錨href被誤解爲外部鏈接<base>在jQuery UI標籤中的標籤

我有以下<base>標籤在head>

<base href="http://mytestdomain.com/" /> 

現在,當頁面加載jQuery用戶界面使得兩個標籤了我的兩個<li>的的然後嘗試通過ajax從基本URL加載內容。 jQuery ui不知道錨的href不是「外部」,但「本地」因此無法加載內容。

我的HTML:

<div id="container-1"> 
    <ul> 
     <li><a href="#fragment-1">some text1</a></li> 
     <li><a href="#fragment-2">some text2</a></li> 
    </ul> 
    <div id="fragment-1"> 
     LOREM IPSUM1 
    </div> 
    <div id="fragment-2"> 
     LOREM IPSUM2 
    </div> 
</div> 

我的javascript:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#container-1').tabs(); 
    });  
</script> 

有人能幫助我嗎?

+2

相關的http:// stackoverflow.com/q/1889076/2333214 ...建議:不要使用''標籤。 – 2014-11-21 12:38:05

+0

@TJ你說得對。但是我需要這個標籤(我和typo3一起工作,我的項目是BIIIIG。) – brandelizer 2014-11-21 12:55:48

回答

2

因爲你的基本標籤:那因爲它指向的目錄肯定是行不通的

<a href="http://mytestdomain.com/#fragment-2">some text2</a> 

<base href="http://mytestdomain.com/" />

的有將被解釋像下面的鏈接。

修改超鏈接的href以包含剩餘路徑,直到包含該段的文件將解決問題。

例如:

<a href="index.html#fragment-2">some text2</a> 

將被解釋爲

<a href="http://mytestdomain.com/index.html#fragment-2">some text2</a> 

和jQuery-UI會發現具有元件id片段-2index.html

+0

你說得對,但看看下面的答案。編輯錨(http://mytestdomain.com/index.html#fragment2)不起作用,但我不知道爲什麼.... – brandelizer 2014-11-21 14:40:18

+1

@brandelizer不添加'mytestdomain.com/index.html#fragment2'同時擁有基本網址,只需添加'index.html#fragment2',以便將基礎網址添加到它,或使用'http:// mytestdomain.com/index.html#fragment2',以便基地將跳過。我在本地測試了第一種方法,它的工作原理... – 2014-11-21 15:04:26

+0

OK.I在頁面中有多個選項卡模塊,我只在第一個模塊中嘗試過。謝謝你的工作!我希望我能回報這個青睞 – brandelizer 2014-11-24 07:40:35