<!-- 

    TURN ON THE LIGHT

    CREATED BY: chrismory

    2021

-->

<!DOCTYPE HTML>

<html>

    <head>

    <style>

        /*

    TURN ON THE LIGHT

    CREATED BY: chrismory

    2021

*/

body {

    font-family: 'Oswald', sans-serif;

    font-size:25px;

    font-weight:bold;

    margin:0 0 0 0;

    background-color:#f0f0f0;

}

* {

    -webkit-touch-callout:none;

    -webkit-user-select:none;

    -moz-user-select:none;

    -ms-user-select:none;

    user-select:none;

}

#game {

    position:relative;

    margin:auto;

    width:360px;

    height:460px;

}

circle,polyline,path,line {

    display:none;

}

#paths path,#paths line,#paths circle {

    display:block;

}

#complete circle,#complete path {

    display:block;

}

.blocks {

    position:absolute;

    width:72px;

    height:72px;

    display:none;

    z-index:400;

}

#complete {

    position:absolute;

    top:0;

    left:0;

    width:360px;

    height:460px;

    z-index:200;

    display:none;

}

#lighton {

    position:absolute;

    top:0;

    right:0;

    width:120px;

    height:173px;

    background-image:url(https://i.imgur.com/tTabsv6.png);

}

.b_levels {

    position:absolute;

    width:56px;

    height:47px;

    border:2px solid;

    background-color:#e0e0e0;

    border-radius:10px;

    font-size:15px;

    cursor:pointer;

    z-index:400;

}

.b_levels div {

    position:absolute;

    top:15px;

    left:0;

    width:100%;

    font-size:21px;

}

.btn {

    position:absolute;

    top: 127px;

    border:2px solid;

    background-color:#e0e0e0;

    border-radius:10px;

    font-size:15px;

    cursor:pointer;

    padding:5px 10px 5px 10px;

    display:none;

    z-index:200;

}

    </style>

        <meta name="viewport" content="width=device-width, initial-scale=1.0">

        <meta charset="utf-8">

        <link href="https://fonts.googleapis.com/css?family=Oswald:700" rel="stylesheet">

        <title>Turn On the Light</title>

        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

        <script src="https://hammerjs.github.io/dist/hammer.js"></script>

    </head>

    <body>

        <div id="game">

            <svg id="paths" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="360px" height="460px" viewBox="0 0 360 460" E="xMidYMid meet">

                <path fill="#000000" d="M21 41l7 0 0 -14c0,-1 1,-2 2,-2 1,0 2,1 2,2l0 14 8 0 0 -14c0,-1 1,-2 2,-2 1,0 2,1 2,2l0 14 7 0c1,0 2,0 2,2l0 3c0,2 -1,3 -2,3l-1 0 0 6c0,5 -4,9 -8,9l0 3c0,1 -1,2 -2,2l-8 0c-1,0 -2,-1 -2,-2l0 -3c-4,0 -8,-4 -8,-9l0 -6 -1 0c-1,0 -2,-1 -2,-3l0 -3c0,-2 1,-2 2,-2z"/>

                <line fill="none" stroke="#000000" stroke-width="4" x1="36" y1="68" x2="36" y2= "172" />

                <path fill="none" stroke="#000000" stroke-width="4" stroke-linecap="round" d="M324 172l0 -16c0,-10 -9,-18 -18,-17 -3,1 -7,3 -9,2 -4,-2 -5,-9 -2,-9 2,0 16,6 14,2 0,-2 -21,-8 -19,-11 3,-3 24,8 23,3 -1,-4 -24,-7 -23,-12 1,-4 26,9 27,4 0,-4 -22,-9 -25,-11 -6,-5 -3,-13 -4,-17 -1,-3 -4,-8 -5,-10 -1,-1 -5,-4 -7,-12 -2,-9 -4,-18 4,-28 8,-10 24,-14 34,-11 10,2 25,14 23,33 -1,9 -7,15 -12,20 -12,10 -6,23 -12,24 -2,1 -4,1 -7,1 -6,-2 -3,-18 -4,-25 -1,-6 -5,-7 -8,-11 -2,-3 1,-5 5,-2 2,3 2,-1 4,-4 3,-4 6,-1 6,1 0,3 1,7 4,1 2,-4 7,-1 5,4 -3,6 -5,6 -10,9"/>

                <path id="mainpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104 0 216c0,20 16,36 36,36l216 0c20,0 36,-16 36,-36l0 -216"/>

                <circle id="maincircle" fill="#fffd56" cx="0" cy="0" r="7">

                    <animateMotion dur="1.5s" calcmode="linear" repeatCount="indefinite">

                    <mpath xlink:href="#mainpath"/>

                </circle>

            </svg>

            <div style="position:absolute;top:15px;left:0;width:320px;text-align:center;">TURN ON</div>

            <div style="position:absolute;top:40px;left:0;width:320px;text-align:center;">THE MAGMORY LIGHT</div>

            <div id="level" style="position:absolute;top:70px;left:0;width:320px;text-align:center;font-size:21px;display:none;">Level: <span>0</span></div>

            <div id="moves" style="position:absolute;top:95px;left:0;width:320px;text-align:center;font-size:21px;display:none;">Moves: <span>0</span></div>

            <svg id="complete" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="360px" height="460px" viewBox="0 0 360 460" E="xMidYMid meet">

            </svg>

            <div id="lighton"></div>

            <div id="info" style="position:absolute;top:90px;left:50px;width:220px;height:auto;font-size:18px;text-align:center;">

                Click on cable<br>

                segments to rotate<br>

                clockwise until all<br>

                the segments are in<br>

                the correct position.

            </div>

            <div id="div_levels" style="position:absolute;top:248px;left:52px;width:260px;height:165px;font-size:18px;text-align:center;"></div>

            <div class="btn" id="b_menu" style="left:85px;">MENU</div>

            <div class="btn" id="b_next" style="left:150px;">NEXT LEVEL</div>

        </div>

    </body>

    <script>

        /*

    TURN ON THE LIGHT

    CREATED BY: chrismory

    2021

*/

var playing = true;

// levels.length = 12 (number of levels)

// each element of levels array is composed of an array

// The game board is a 5x4 matrix

// I define values for the sides of

// each cell of the 5x4 matrix:

// 1 = top

// 2 = right

// 3 = bottom

// 4 = left

// each element of this sub array defines

// the piece (.blocks) of the game starting top-left

// each of the values define what to show,

// example: 141_90

    // 14 indicates that the curved line

    // will go from top (1) to left (4)

    // the third caharacter is a 1

    // this indicates where to draw the arrow

    // as this 3rd character is 1,

    // the arrow will be shown at top

    // the underscore separates the arrow

    // definition from the initial rotation (deg)

    // this deg values can be 0 (no rotation al all)

    // is deg===0 then the brick background is shown

// there are some special values for this elements:

    // x = brick with a cross

    // y = brick with top-right & bottom-left lines

    // z = brick with top-left & bottom-right lines

var levels = [

    ["122_0","242_90","242_0","242_-90","141_0"],

    ["122_180","343_0","","232_0","141_90","","122_90","242_-90","141_-90"],

    ["x","343_90","232_-90","244_180","131_90","122_-90","242_-180","y","z","141_90","","122_-90","122_-90","141_90"],

    ["133_90","343_-90","232_180","242_90","141_-90","122_90","y","121_90","x","344_-90","233_90","122_-90","343_90","z","141_180","121_90","242_0","122_180","141_90"],

    ["122_90","343_180","232_90","242_180","141_-90","233_180","z","x","y","344_180","133_90","y","z","z","141_90","122_180","242_-90","141_180","233_180","121_-90"],

    ["y","242_90","343_-90","232_180","z","232_90","242_180","x","141_180","141_180","131_90","122_180","x","244_-90","344_90","122_0","244_180","144_90","122_90","144_0"],

    ["122_90","343_-90","232_180","242_-90","141_-90","233_180","z","z","242_90","343_90","133_180","121_180","x","344_90","133_-90","122_-90","242_90","141_180","121_180","144_90"],

    ["133_-90","232_90","343_180","232_180","141_90","122_0","z","y","y","344_-90","232_180","z","y","x","141_90","121_-90","144_180","121_90","144_90","144_-90"],

    ["122_90","242_-90","343_90","344_180","131_-90","233_90","244_90","144_180","z","141_180","133_-90","121_-90","z","y","344_90","122_-90","242_180","141_-90","122_180","141_90"],

    ["133_-90","233_180","344_180","232_90","141_-90","122_-90","y","x","z","343_90","233_180","z","x","141_-90","133_90","122_180","141_-90","121_90","244_180","144_-90"],

    ["122_180","343_-90","232_90","343_-90","131_90","233_180","144_90","131_-90","133_180","131_-90","133_90","232_00","z","z","141_180","122_90","141_-90","122_-90","141_180"],

    ["133_180","232_180","242_-90","343_90","131_90","122_180","x","343_90","122_-90","141_180","233_90","x","x","244_180","344_-90","122_-90","141_180","122_90","242_180","141_-90"]

];

// toverify array contain the matrix elements to be verify,

// when rotation degree for each elements of toverify iz zero

// then the level is complete - see verify() function

var toverify = [

    [1,3],

    [0,4,6,7,8],

    [4,5,6,9,12,13],

    [0,2,3,4,5,7,9,11,12,14,17,18],

    [0,1,2,3,4,5,10,15,16,17],

    [1,2,3,5,6,8,10,16,17],

    [0,1,2,3,4,5,8,9,10,11,13,14,15,16,17,18,19],

    [0,1,2,3,4,5,9,10,14,15,16,17,18],

    [0,1,2,4,5,6,7,9,10,14,15,16,17,18,19],

    [0,1,2,3,4,5,9,10,13,14,15,16,17,18,19],

    [0,1,2,3,4,5,6,7,8,9,10,11,14,15,16,17,18,19],

    [0,1,2,3,4,5,7,8,9,10,13,14,15,16,17,18,19]

];

// completed_paths is an array with SVG paths to show

// the animation when a level is completed

var completed_paths = [

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36l216 0c20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36 20,0 36,16 36,36 0,20 16,36 36,36l72 0c20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104 0 72c0,20 16,36 36,36l72 0c20,0 36,16 36,36 0,20 16,36 36,36 20,0 36,-16 36,-36m0 0c0,-20 16,-36 36,-36 20,0 36,-16 36,-36l0 -72"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104 0 72c0,20 16,36 36,36 20,0 36,16 36,36 0,20 16,36 36,36 20,0 36,16 36,36 0,20 16,36 36,36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36 0,-20 -16,-36 -36,-36l-72 0c-20,0 -36,-16 -36,-36 0,-20 16,-36 36,-36l72 0c20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36 20,0 36,16 36,36 0,20 -16,36 -36,36 -20,0 -36,16 -36,36l0 72c0,20 16,36 36,36l72 0c20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36 0,-20 -16,-36 -36,-36l-72 0c-20,0 -36,16 -36,36 0,20 16,36 36,36 20,0 36,-16 36,-36l0 -72c0,-20 16,-36 36,-36l72 0c20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36l72 0c20,0 36,16 36,36l0 72 0 72c0,20 -16,36 -36,36l-72 0c-20,0 -36,-16 -36,-36l0 -72c0,-20 16,-36 36,-36l72 0 72 0c20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36 20,0 36,16 36,36 0,20 -16,36 -36,36 -20,0 -36,16 -36,36l0 72c0,20 16,36 36,36l72 0c20,0 36,-16 36,-36l0 -72c0,-20 16,-36 36,-36l72 0c20,0 36,16 36,36l0 72c0,20 -16,36 -36,36 -20,0 -36,-16 -36,-36 0,-20 -16,-36 -36,-36l-72 0c-20,0 -36,-16 -36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36l72 0c20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104 0 72c0,20 16,36 36,36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,16 36,36 0,20 16,36 36,36 20,0 36,16 36,36l0 72c0,20 -16,36 -36,36 -20,0 -36,-16 -36,-36 0,-20 -16,-36 -36,-36 -20,0 -36,16 -36,36 0,20 -16,36 -36,36 -20,0 -36,-16 -36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,16 36,36 0,20 16,36 36,36l72 0c20,0 36,-16 36,-36 0,-20 -16,-36 -36,-36 -20,0 -36,-16 -36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36l72 0c20,0 36,16 36,36 0,20 -16,36 -36,36l-72 0c-20,0 -36,16 -36,36l0 72c0,20 16,36 36,36l72 0c20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,16 36,36 0,20 16,36 36,36 20,0 36,-16 36,-36 0,-20 -16,-36 -36,-36 -20,0 -36,-16 -36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36l0 -72"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104 0 72c0,20 16,36 36,36 20,0 36,16 36,36 0,20 -16,36 -36,36 -20,0 -36,16 -36,36 0,20 16,36 36,36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36l72 0c20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,16 36,36l0 72c0,20 -16,36 -36,36l-72 0c-20,0 -36,-16 -36,-36l0 -72 0 -72c0,-20 -16,-36 -36,-36 -20,0 -36,16 -36,36 0,20 16,36 36,36l72 0c20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104c0,20 16,36 36,36 20,0 36,16 36,36 0,20 -16,36 -36,36 -20,0 -36,16 -36,36l0 72c0,20 16,36 36,36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36l0 -72c0,-20 16,-36 36,-36 20,0 36,16 36,36l0 72c0,20 -16,36 -36,36 -20,0 -36,16 -36,36 0,20 16,36 36,36 20,0 36,-16 36,-36 0,-20 16,-36 36,-36 20,0 36,-16 36,-36l0 -72 0 -72"/>',

    '<path id="motionpath" fill="none" stroke="#000000" stroke-width="4" d="M36 68l0 104 0 72c0,20 16,36 36,36l72 0c20,0 36,16 36,36l0 72c0,20 16,36 36,36l72 0c20,0 36,-16 36,-36 0,-20 -16,-36 -36,-36l-72 0 -72 0 -72 0c-20,0 -36,16 -36,36 0,20 16,36 36,36 20,0 36,-16 36,-36l0 -72 0 -72c0,-20 16,-36 36,-36l72 0c20,0 36,16 36,36 0,20 16,36 36,36 20,0 36,-16 36,-36l0 -72"/>'

];

$(document).ready(function() {

    $("body").delegate("#b_next","click",function() {

        var level = parseInt($("#level span").html());

        show_level(level);

    });

    $("body").delegate("#b_menu","click",function() {

        $("body").css("background-color","#f0f0f0");

        $("#complete").html("");

        $("#b_menu,#b_next,#level,#moves").hide();

        $("#info,#mainpath,#maincircle,#div_levels,#lighton").show();

        $(".blocks").remove();

    });

    $("body").delegate(".b_levels","click",function() {

        var level = parseInt($(this).children("div").html());

        $("#info,#div_levels").hide();

        $("#mainpath,#maincircle").hide();

        show_level(level-1);

    });

    $("body").delegate(".blocks","click",function() {

        // rotates the block 90 deg clockwise

        if (playing) {

            blocked = parseInt($(this).data("blocked"));

            if (blocked===0) {

                $(".blocks").css("z-index",100);

                angle = parseInt($(this).data("angle"))+90;

                $(this).css({

                    "transition":"200ms linear all",

                    "z-index":"101",

                    "transform:":"rotate("+angle+"deg)",

                    "-moz-transform":"rotate("+angle+"deg)",

                    "-webkit-transform":"rotate("+angle+"deg)",

                    "-o-transform":"rotate("+angle+"deg)",

                    "-ms-transform":"rotate("+angle+"deg)",

                    "-khtml-transform":"rotate("+angle+"deg)"

                });

                $(this).data("angle",angle);

                moves = parseInt($("#moves span").html());

                $("#moves span").html(moves+1);

                verify();

            }

        }

    });

    show_level_buttons();

});

function show_level_buttons() {

    var level = 1;

    for (var i=0;i<3;i++) {

        for (var j=0;j<4;j++) {

            bhtml = '<div class="b_levels" style="top:'+(i*55)+'px;left:'+(2+j*65)+'px;">LEVEL<div>'+level+'</div></div>';

            $("#div_levels").append(bhtml);

            level++;

        }

    }

}

function verify() {

    // see if all block's rotation angle is zero

    // using javascript mod

    complete = true;

    var level = parseInt($("#level span").html());

    var verify_paths = toverify[level-1];

    for (var i=0;i<verify_paths.length;i++) {

        angle = parseInt($("#block_"+verify_paths[i]).data("angle"));

        mod = angle%360;

        if (mod!=0) {

            complete = false;

        }

    }

    if (complete) {

        playing = false;

        completed();

    }

}

function completed() {

    // show the level completed_paths

    $(".a1,.a2,.a3,.a4").hide();

    $(".blocks circle,.blocks path,.blocks line").hide();

    $(".blocks").css({

        "cursor":"default",

        "background-image":"url()"

    });

    var level = parseInt($("#level span").html());

    $("#complete path:eq("+(level-1)+")").show();

    var completed_path = completed_paths[level-1];

    html = completed_path;

    html += '<circle id="mover" fill="#fffd56" cx="0" cy="0" r="7">';

    html += '</circle>'

    $("#complete").html(html).show();

    var myPath = document.getElementById("motionpath");

    var length = myPath.getTotalLength();

    var speed = length/400;

    html = '<animateMotion dur="'+speed+'s" calcmode="linear" repeatCount="indefinite">';

    html += '<mpath xlink:href="#motionpath"/>';

    $("#complete circle").html(html);

    var level = parseInt($("#level span").html());

    $(".b_levels:eq("+(level-1)+")").css({

        "border":"2px solid #006100",

        "color":"#006100",

        "background-color":"#ffffff"

    });

    if (level<12) {

        $("#b_next").show();

    }

    $("body").css("background-color","#f0f0f0");

    $("#lighton").show();

}

function show_blocks() {

    var paths = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="72px" height="72px" viewBox="0 0 72 72" E="xMidYMid meet">';



    paths += '<circle fill="#9a9a9a" cx="36" cy="36" r="36"/>';



    paths += '<polyline fill="none" class="a1" stroke="#000000" stroke-width="4" stroke-linecap="round" points="49,13 36,0 23,13 "/>';

    paths += '<polyline fill="none" class="a2" stroke="#000000" stroke-width="4" stroke-linecap="round" points="59,23 72,36 59,49 "/>';

    paths += '<polyline fill="none" class="a3" stroke="#000000" stroke-width="4" stroke-linecap="round" points="49,59 36,72 23,59 "/>';

    paths += '<polyline fill="none" class="a4" stroke="#000000" stroke-width="4" stroke-linecap="round" points="13,23 0,36 13,49 "/>';



    paths += '<path fill="none" class="p12" stroke="#000000" stroke-width="4" d="M36 0c0,20 16,36 36,36"/>';

    paths += '<path fill="none" class="p23" stroke="#000000" stroke-width="4" d="M36 72c0,-20 16,-36 36,-36"/>';

    paths += '<path fill="none" class="p34" stroke="#000000" stroke-width="4" d="M36 72c0,-20 -16,-36 -36,-36"/>';

    paths += '<path fill="none" class="p14" stroke="#000000" stroke-width="4" d="M36 0c0,20 -16,36 -36,36"/>';



    paths += '<line fill="none" class="p13" stroke="#000000" stroke-width="4" x1="36" y1="0" x2="36" y2= "72" />';

    paths += '<line fill="none" class="p24" stroke="#000000" stroke-width="4" x1="72" y1="36" x2="0" y2= "36" />';

    paths += '';

    paths += '</svg>';

    var c = 0;

    for (var i=0;i<4;i++) {

        for (var j=0;j<5;j++) {

            $("#game").append("<div class='blocks' id='block_"+c+"' data-angle='0' style='top:"+(172+i*72)+"px;left:"+(j*72)+"px;'>"+paths+"</div>");

            c++;

        }

    }

}

function show_level(level) {

    // show blocks according level

    $("body").css("background-color","#c0c0c0");

    playing = true;

    $("#complete").html("").hide();

    $(".blocks").remove();

    show_blocks();

    $("#level span").html(level+1);

    $("#moves span").html(0);

    $("#level,#moves,#b_menu").show();

    $("#lighton,#b_next").hide();

    level_paths = levels[level];

    $(".blocks").css({

        "background-image":"url(https://i.imgur.com/0Fc0TuZ.png)",

        "cursor":"default"

    }).data("angle","0").data("blocked","1").show();

    $(".blocks circle,.blocks polyline,.blocks path,.blocks line").hide();

    for (var i=0;i<level_paths.length;i++) {

        path = level_paths[i];

        switch (path) {

            case "":

                break;

            case "x":

                $(".blocks:eq("+i+") .p13").show();

                $(".blocks:eq("+i+") .p24").show();

                break;

            case "y":

                $(".blocks:eq("+i+") .p12").show();

                $(".blocks:eq("+i+") .p34").show();

                break;

            case "z":

                $(".blocks:eq("+i+") .p23").show();

                $(".blocks:eq("+i+") .p14").show();

                break;

            default:

                arrow = path.substr(2,1);

                angle = parseInt(path.substr(4));

                path = path.substr(0,2);

                $(".blocks:eq("+i+") .p"+path).show();

                bgi = ""

                if (angle!==0) {

                    $(".blocks:eq("+i+") .a"+arrow).show();

                    $(".blocks:eq("+i+") circle").show();

                    $(".blocks:eq("+i+")").css({

                        "background-image":"url()",

                        "cursor":"pointer"

                    }).data("angle",angle).data("blocked",0);

                    rotate_block(i,angle);

                }

                break;

        }

    }

}

function rotate_block(n,angle) {

    $(".blocks:eq("+n+")").css({

        "transform:":"rotate("+angle+"deg)",

        "-moz-transform":"rotate("+angle+"deg)",

        "-webkit-transform":"rotate("+angle+"deg)",

        "-o-transform":"rotate("+angle+"deg)",

        "-ms-transform":"rotate("+angle+"deg)",

        "-khtml-transform":"rotate("+angle+"deg)",

    }).data("angle",angle);

}

    </script>

</html>