2017-04-26 39 views
12

我想初始化基礎工具提示而沒有初始化所有東西(即$(document).foundation())並且我在這個簡單的任務中失敗。

我想知道(1)如何使用new Foundation.Tooltip代替(2)我是否需要modernizr,因爲documentation in foundation website沒有提到modernizr作爲要求。

我提到modernizr,因爲沒有那個工具提示不會有任何樣式,也不會顯示HTML。

謝謝

<!DOCTYPE html> 
<meta name="robots" content="noindex"> 
<html> 

<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="width=device-width"> 
    <title>JS Bin</title> 
</head> 
<!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js"></script> --> 
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/foundation/6.3.1/js/foundation.js"></script> 
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/foundation/6.3.1/css/foundation.css" /> 

<body> 
    <div class="row"> 
     <span class="has-tip" title="Tooltips are awesome, you <a>link</a> totally use them!"> 
      Hover me 
     </span> 
    </div> 



    <script id="jsbin-javascript"> 
     $(document).ready(function() { 
      new Foundation.Tooltip($(".has-tip"), { 
       allowHtml: true 
      }); 

      // $(document).foundation(); 
     }) 
    </script> 
</body> 

</html> 
+0

有一些仍然有待回答,我可以添加到我的反應? – SupposedlySam

回答

4

先回答第二部分:基金會6不需要Modernizr的(但F5確實)(見:http://foundation.zurb.com/forum/posts/37234-modernizr-and-foundation-6),所以你可以使用所有的基金會6的部件的完全沒有 Modernizr的。

在你的榜樣,我認爲你是混合creating動態工具提示:

new Foundation.Tooltip($(".has-tip"), { 
    allowHtml: true 
}); 

隨着initialising一個提示:

$(document).foundation(); // initialise ALL Foundation script - usually required by Foundation generally 

OR

$('.has-tip').foundation() // just scripts associated with this element (e.g. tooltips) 

所以創建並初始化JUST工具提示:

new Foundation.Tooltip($(".has-tip"), { 
    allowHtml: true 
}); 
$('.has-tip').foundation(); 

出於顯而易見的原因,創作必須先初始化。

見例如:https://jsfiddle.net/tymothytym/b6eoh2yg/1/

5

我沒有以前那麼有基礎的工作,我肯定沒有專家。不過,我想我已經找出了你的代碼不工作的原因。

工作守則

你可以得到所有必要的聯繫和看到設在這裏CodePen工作代碼示例:http://codepen.io/SupposedlySam/pen/ybbYMp

你需要得到基金工具提示插件工作

  1. Foundation.css
  2. Modernizr.js(放置在head標籤或低於所有其他腳本之前body接近(通過Foundation's JavaScript Setup Page
  3. 的JQuery .js
  4. Foundation.js
  5. Foundation.tooltip.js(僅在不使用包含所有插件的foundation.min.js時才需要)

怪異的東西不是真的告訴你

  1. 的提示將出現在左上角的身體(在原點0,0)如果沒有對於的高度足夠的空間字加上工具提示的高度。
  2. 如果您希望工具提示在單擊與其關聯的單詞時保持打開狀態,則必須在元素上設置tabIndex
  3. 如果要擴展Foundation插件的選項,則必須單獨初始化每個您希望使用該功能的元素。
  4. 您必須在html屬性中使用&quot;而不是雙引號("),並且它們不能用反斜槓(\)轉義。
4

,如果你不想在你的整個文檔初始化的基礎上,你可以初始化它specifice元素,如:

$('.has-tip').foundation(); 

基礎不依賴於現代化主義者,它沒有任何問題沒有現代化工作。

和codepen的提示,而無需調用document.foundation:

https://codepen.io/faw/pen/vmZjzg