[英]Set Font Awesome icons as cursor - is this possible?
Font Awesome 有一個非常好的圖標集合,可用於 Web 項目。 我想使用這些圖標之一作為光標(自定義光標)。
據我了解,自定義光標需要一個圖片網址,但我找不到 Font Awesome 圖標的圖片網址。
知道了!
我做了一個演示: http : //jsfiddle.net/rqq8B/2/
// http://stackoverflow.com/questions/13761472/how-to-render-glyphs-from-fontawesome-on-a-canvas-element // http://stackoverflow.com/questions/13932291/css-cursor-using-data-uri $(function() { var canvas = document.createElement("canvas"); canvas.width = 24; canvas.height = 24; //document.body.appendChild(canvas); var ctx = canvas.getContext("2d"); ctx.fillStyle = "#000000"; ctx.font = "24px FontAwesome"; ctx.textAlign = "center"; ctx.textBaseline = "middle"; ctx.fillText("\", 12, 12); var dataURL = canvas.toDataURL('image/png') $('body').css('cursor', 'url('+dataURL+'), auto'); });
body { position: fixed; left: 0; right: 0; top: 0; bottom: 0; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
有jQuery Awesome Cursor ,您可以通過調用一個簡單的代碼向光標添加字體很棒的圖標:
$('body').awesomeCursor('pencil');
或者向它傳遞一些選項:
$('body').awesomeCursor('pencil', {
/* your options here */
size: 22,
color: 'orange',
flip: 'horizontal'
});
免責聲明:我不是我剛剛找到的這個庫的作者。
提到的畫布方法會導致光標模糊。
使用 SVG 可提供更好的結果:
cursor: url( '/assets/img/volume-up.svg' ), pointer;
對於任何使用 Vue.js 的人來說,有一個更簡單的方法:
將字體真棒圖標作為組件導入:
import { library } from '@fortawesome/fontawesome-svg-core';
import { fas } from '@fortawesome/free-solid-svg-icons';
import { fab } from '@fortawesome/free-brands-svg-icons';
import { far } from '@fortawesome/free-regular-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
library.add(fas);
library.add(fab);
library.add(far);
Vue.component('fa-icon', FontAwesomeIcon);
並直接在頁面的 HTML 中使用它:
<fa-icon icon="copy" @click="yourFunction"/>
並用<span>
包圍你的標簽:
<span class="hover"><fa-icon icon="copy" @click="yourFunction"/></span>
並添加到您的 css:
span.hover {
cursor: pointer;
}
這將在所有<span>
標簽上添加一個指針,並在您的代碼中添加類hover
(以及您的字體真棒圖標!)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.