示例#1
0
'use strict';

import React from 'react';
import classnames from 'classnames';

import SVGSequenceAnimation from 'app/lib/svg-sequence-animation';

const ImageHover = React.createClass({
  mixins: [SVGSequenceAnimation({ fadeInDuration: 30, fps: 40 })],
  triggerAnim() {
    this.resetAnim();
    this.anim();
  },
  onMouseEnter() {
    this.triggerAnim();
  },
  componentWillReceiveProps(nextProps) {
    if(nextProps.hover) {
      this.triggerAnim();
    }
  },
  render() {
    const { customClass, onClick } = this.props;
    return <div
      className={classnames('image-hover', customClass, {
        hover: this.props.hover
      })}
      onClick={onClick}
      onMouseEnter={this.onMouseEnter}
    >
      <svg ref="animsvg" title="Image hover" role="img" viewBox="-105 197 400 400" x="0px" y="0px" className="image-hover-icon">
示例#2
0
'use strict';

import React from 'react';
import classnames from 'classnames';
import SVGSequenceAnimation from 'app/lib/svg-sequence-animation';

const MenuRingSequence = React.createClass({

  mixins: [SVGSequenceAnimation()],

  render() {
    const classes = classnames('menu-ring-sequence', this.props.customClass);

    return (
      <div className={classes} style={this.props.customStyles}>
        <svg ref="animsvg" title="menu ring sequence" role="img" viewBox="0 0 46 46">
          <g id="Frame1">
          	<g>
          		<path d="M8.03,26.055c-2.131,2.086-4.243,4.146-5.307,6.985c-1.031,2.75,0.306,4.909,3.248,5.072
          			c1.68,0.093,3.458,0.036,5.063-0.414c11.918-3.336,22.156-9.577,30.85-18.339c1.208-1.217,2.205-2.737,2.972-4.28
          			c1.657-3.33,0.038-5.799-3.684-5.876c-1.556-0.032-2.369,0.883-2.249,2.607c0.774-0.044,1.556-0.154,2.33-0.118
          			c1.786,0.084,2.264,0.855,1.454,2.427c-0.453,0.879-0.991,1.765-1.679,2.463c-1.896,1.924-3.767,3.904-5.868,5.588
          			c-7.268,5.825-15.227,10.43-24.238,13.026c-1.267,0.365-2.608,0.579-3.925,0.637c-2.084,0.093-2.628-0.794-1.635-2.592
          			c0.558-1.012,1.185-2.053,2.014-2.833C8.714,29.151,9.257,27.889,8.03,26.055z"/>
          		<path d="M8.03,26.055c1.227,1.834,0.684,3.096-0.653,4.354c-0.829,0.78-1.456,1.821-2.014,2.833
          			c-0.992,1.798-0.448,2.685,1.635,2.592c1.317-0.059,2.658-0.272,3.925-0.637c9.011-2.596,16.97-7.2,24.238-13.026
          			c2.101-1.684,3.972-3.664,5.868-5.588c0.688-0.698,1.225-1.584,1.679-2.463c0.81-1.572,0.332-2.343-1.454-2.427
          			c-0.774-0.036-1.556,0.074-2.33,0.118c-0.121-1.724,0.693-2.64,2.249-2.607c3.723,0.077,5.341,2.546,3.684,5.876
          			c-0.768,1.542-1.764,3.062-2.972,4.28c-8.694,8.762-18.932,15.003-30.85,18.339c-1.605,0.449-3.383,0.507-5.063,0.414
          			c-2.942-0.163-4.279-2.322-3.248-5.072C3.787,30.201,5.899,28.141,8.03,26.055z"/>
          	</g>