2009-08-22 52 views
5

所以現在我抨擊我的頭 - 此刻,我們使用一個按鈕元素給它我們自己的自定義字體,很好 - 這是有效的,但是當我們在網站的其他部分使用Cufon時,我們想知道是否有可能讓Cufon在按鈕上工作。可以讓Cufon在按鈕上工作嗎?

到目前爲止,我已經將按鈕更改爲在'input'或'input [type =「submit」]'元素上使用標準css樣式,但是我已經在cufon中嘗試了這兩種方法,徒勞無功。

這是一個按鈕 - 所以Cufon生成圖像,這應該可行,但也許我做錯了 - 任何人都可以幫忙嗎?

+2

我猜想它可以在'

+0

我已經嘗試了到目前爲止 - 不知道

回答

5

以下列方式使用元素:

<button type="buton">value</button> 

應用的Cufón風格時工作:

Cufon.replace('button', {color: '-linear-gradient(#999, 0.45=#666, 0.45=#555, #999)'}); 

非常感謝:)

1

我發現使用的Cufón唯一的解決辦法在<input type="submit"/>按鈕是使用JavaScript(jQuery個人)。

  1. 將輸入按鈕的文本(「值」屬性)複製到範圍。
  2. 更換使用Cufon.replace跨度()
  3. 刪除輸入按鈕的文本
  4. 位置跨度按鈕
  5. 傳播從跨度點擊()事件的按鈕

完成!

3

我相信沒有辦法讓Cufon與<input type="submit" />一起工作。 主要原因是沒有地方插入畫布...

然而,你可以簡單地切換到更合適的語義<button>,那需要關閉</button>,從而創造了畫布的地方。

雖然非常重要,但請確保您指定了類型,因爲如果您不這樣做,IE7及以下版本將不會提交表單。似乎指定類型導致在所有瀏覽器中統一行爲。

讓我知道如果上述幫助! 乾杯

7
$('.input-button').each(function(){ 
    $(this).hide().after('<span class="input-button">').next('span.input-button').text($(this).val()).click(function(){ 
     $(this).prev('input.input-button').click(); 
    }); 
}); 

我用上面的代碼我輸入的值複製到一個跨度,這讓我使用的Cufón。它工作的很好,仍然回落到禁用JavaScript的'提交'輸入。

相關問題