3 Star 0 Fork 0

Gitee 极速下载/jquery-awesome-cursor

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/jwarby/jquery-awesome-cursor
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

jQuery Awesome Cursor plugin GitHub version

Build Status Dependency Status devDependency Status

A jQuery plugin for using FontAwesome icons as custom CSS cursors. Also supports using a custom icon font instead of FontAwesome.

See https://jwarby.github.io/jquery-awesome-cursor/ for the full documentation and demos.

$('body').awesomeCursor('pencil');

Requires jQuery and FontAwesome.

Getting started

Installing the plugin

via npm (recommended)

npm install jquery-awesome-cursor
<link rel="stylesheet" href="node_modules/font-awesome/css/font-awesome.min.css" type="text/css">
<script src="node_modules/jquery/dist/jquery.min.js" type="text/javascript"></script>
<script src="node_modules/jquery-awesome-cursor/dist/jquery.awesome-cursor.min.js" type="text/javascript"></script>

From v0.3.0 onwards, FontAwesome is marked as an optional dependency. If you plan on using jquery-awesome-cursor with a different icon font, you can skip installation of any optional dependencies like this:

npm install --no-optional jquery-awesome-cursor
IMPORTANT: npm@3 won't install peerDependencies anymore, so if you haven't already installed jQuery you will get an UNMET PEER DEPENDENCY warning when you install. To fix, just do npm install jquery.

via bower

bower install jquery-awesome-cursor
<link rel="stylesheet" href="bower_components/fontawesome/css/font-awesome.min.css" type="text/css">
<script src="bower_components/jquery/dist/jquery.min.js" type="text/javascript"></script>
<script src="bower_components/jquery-awesome-cursor/dist/jquery.awesome-cursor.min.js" type="text/javascript"></script>
IMPORTANT: from v0.3.0 onwards, you need to bring your own FontAwesome! FontAwesome is considered an optional dependency, but Bower doesn't support optional dependencies - so you must install FontAwesome yourself. See #21.
bower install font-awesome

Manual installation

Download the production version or the development version. You will need to download and install FontAwesome manually as well.

In your web page:

<link rel="stylesheet" href="/path/to/font-awesome.min.css" type="text/css">
<script src="/path/to/jquery.js"></script>
<script src="path/to/jquery.awesome-cursor.min.js"></script>

RawGit CDN

You could also use RawGit's CDN:

<link rel="stylesheet" href="/path/to/font-awesome.min.css" type="text/css">
<script src="/path/to/jquery.js"></script>
<script src="https://cdn.rawgit.com/jwarby/jquery-awesome-cursor/master/dist/jquery.awesome-cursor.min.js"></script>

Documentation

Setting a cursor

You can set a FontAwesome cursor on any element by calling awesomeCursor, and passing the name of the icon you want to use:

$('body').awesomeCursor('<icon name>');

See http://fontawesome.io/icons/ for a list of available icons.

Setting cursor options

Colour

Cursors can be any color you want, specified as a CSS color:

$('body').awesomeCursor('eyedropper', {
  color: '#ff0000'
})
$('body').awesomeCursor('eyedropper', {
  color: 'rgba(255, 255, 255, 0.75)'
})
$('body').awesomeCursor('eyedropper', {
  color: 'cyan'
});
$('body').awesomeCursor('eyedropper', {
  color: 'hsl(90, 100%, 50%)'
});

Size

Cursors can be any size (specified in pixels):

$('body').awesomeCursor('pencil', {
  size: 32
});

Only pixel values are supported, as CSS cursor hotspots can only be specified in pixels.

Hotspot

The hotspot for a cursor can be defined, with an array containing the hotspot's x and y offsets:

$('body').awesomeCursor('pencil', {
  hotspot: [0, 17]
});

Or, using a string descriptor:

$('body').awesomeCursor('pencil', {
  hotspot: 'bottom left'
});
String descriptors

The following values can be used in the hotspot string descriptor:

  • 'center': positions the hotspot's x and y offset in the center of the cursor
  • 'left' : positions the hotspot's x offset on the left of the cursor (equivalent to 0)
  • 'right' : positions the hotspot's x offset on the far right of the cursor (equivalent to cursorSize - 1)
  • 'top' : positions the hotspot's y offset at the top of the cursor (equivalent to 0)
  • 'bottom': positions the hotspot's y offset at the bottom of the cursor (equivalent to cursorSize - 1)

The descriptors can be combined by space-separating them, e.g.:

  • 'top left'
  • 'center left'
  • 'bottom right'
  • 'top right'
  • etc.

Flip

Cursors can be flipped horizontally, vertically, or in both directions, by setting the flip option:

// Horizontal flip
$('body').awesomeCursor('pencil', {
  flip: 'horizontal'
});

// Vertical flip
$('body').awesomeCursor('pencil', {
  flip: 'vertical'
});

// Horizontal and Vertical flip
$('body').awesomeCursor('pencil', {
  flip: 'both'
});

Rotate

A cursor can be rotated any number of degrees using the rotate option:

// 45 degrees clockwise
$('body').awesomeCursor('pencil', {
  rotate: 45
});

// 105 degrees anti-clockwise
$('body').awesomeCursor('pencil', {
  rotate: -105
});

Outline

A cursor can be outlined in any color by setting the outline option to any valid CSS color:

// Red outline
$('body').awesomeCursor('pencil', {
  outline: 'red'
});

// White outline
$('body').awesomeCursor('pencil', {
  outline: 'white'
});

Using a different icon font

As of v0.1.0, a different icon font instead of FontAwesome can be used. To use a different font, the font option must be set to an object, specifying the font family and the CSS class format for icons. The example below shows how typicons icons can be used instead of FontAwesome icons:

// Using 'typicons' icons instead of FontAwesome
$('body').awesomecursor('brush', {
  font: {
    family: 'typicons',
    cssClass: 'typcn typcn-%s' // '%s' is the icon name ('brush')
  }
});

In the above example, we set the font family to 'typicons', and set the cssClass to the format that typicons uses. %s denotes the icon name that is passed as the first argument to awesomeCursor.

The cssClass option can either be a string, as shown above, or a function:

// Using 'typicons' instead of fontawesome
$('body').awesomecursor('brush', {
  font: {
    family: 'typicons',
    cssClass: function(name) {

      // `name` is 'brush'
      return 'typcn typcn-' + name;
    }
  }
});

You may want to set your replacement icon font as the default:

// Use 'typicons' as default
$.fn.awesomeCursor.defaults.font = {
  family: 'typicons',
  cssClass: 'typcn typcn-%s'
};

Note: the replacement icon font must use :before pseudo elements with unicode content

Examples

/* Set the body element's cursor to a green pencil, with the hotspot located at the bottom left of the cursor (where the
 * pencil tip is):
 */
$('body').awesomeCursor('pencil', {
  color: 'green',
  hotspot: 'bottom left'
});

// Set the cursor to be a big blue location arrow icon:
$('body').awesomeCursor('location-arrow', {
  color: '#0050FF',
  hotspot: 'top right',
  size: 48
});

// Set the cursor to be a horizontally flipped version of the location arrow
$('body').awesomeCursor('location-arrow', {
  color: '#0050FF',
  hotspot: 'top right',
  size: 48,
  flip: 'horizontal'
});

// Set the cursor to be a red rotated left arrow
$('body').awesomeCursor('long-arrow-left', {
  color: 'red',
  hotspot: 'top left',
  rotate: 45,
});

// Set the cursor to a black eraser icon with a red outline
$('body').awesomeCursor('eraser', {
  color: 'black',
  outline: 'red'
});

Browser Support

  • Chrome
  • Firefox

Bugs and Feature Requests

Contributing

See CONTRIBUTING.md

Roadmap

  • Allow cursors to be flipped vertically and/or horizontally ✔ v0.0.2
  • Allow cursors to be rotated by an abitrary number of degrees ✔ v0.0.4
  • Optional outlines for cursors ✔ v0.0.5
  • Allow a different icon font to FontAwesome to be used ✔ v0.1.0
  • IE11 support (if possible)
  • Data API (under consideration) ✕ Not implemented
  • Support for composite cursors made of up of multiple icons, a la FontAwesome stacked icons (under consideration) ✕ Not implemented

Release History

  • v0.3.1 - 23rd Apr 2016 - Hotfix - change TravisCI node test versions to v4 and v5; add dotfiles back into bower ignore field
  • v0.3.0 - 23rd Apr 2016 - Make FontAwesome an optional dependency (#21); add an .npmignore file, update bower ignore field; updated devDependencies
  • v0.2.0 - 28th Mar 2016 - Bug fix for certain icons getting clipped when used as a cursor (#19)
  • v0.1.5 - 9th Dec 2015 - Add main to package.json, allowing plugin to be used properly when installed via npm and used with tools such as Browserify
  • v0.1.4 - 23rd Oct 2015 - Remove minor version constraints on bower/npm dependencies
  • v0.1.3 - 19th Oct 2015 - Bug fix for Chrome not updating cursor if cursor had already been set, run tests using Karma, using SPDX format for "license" field in package.json
  • v0.1.2 - 25th May 2015 - Bug fix for rendering artifacts in Chrome (#14)
  • v0.1.1 - 5th Mar 2015 - Bug fix for rendering artifacts in Firefox (#10)
  • v0.1.0 - 17th Dec 2014 - Add font option for specifying an alternative icon font to use instead of FontAwesome
  • v0.0.5 - 12th Dec 2014 - Add outline option for specifying an outline color for cursors
  • v0.0.4 - 29th Nov 2014 - Add rotate option for rotating cursor by a specified number of degrees. Flip transformation now applied after other transformations (e.g. rotate)
  • v0.0.3 - 17th Nov 2014 - Fix an error in the README file
  • v0.0.2 - 17th Nov 2014 - Add the flip option to allow cursors to be flipped horizontally, vertically, or in both directions
  • v0.0.1 - 10th Nov 2014 - First version
Copyright (c) 2014 James Warwood Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

Awesome Cursor 是一个使用 FontAwesomeicons 作为自定义光标的 jQuery 插件 展开 收起
README
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/mirrors/jquery-awesome-cursor.git
git@gitee.com:mirrors/jquery-awesome-cursor.git
mirrors
jquery-awesome-cursor
jquery-awesome-cursor
master

搜索帮助