Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不使用画布的情况下使用HTML5制作旋转单词和旋转线条?_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 如何在不使用画布的情况下使用HTML5制作旋转单词和旋转线条?

Javascript 如何在不使用画布的情况下使用HTML5制作旋转单词和旋转线条?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在做一个项目,我想画一条角线,在这条线的末尾我必须画一个角字符。但我不想使用canvas,因为需求是用户可以通过点击它来选择其中的任何一行。这可能无法通过画布实现。给我一些建议 事实上,我想画下面的图像,也可以选择一个或多个线在它可用。 这在画布上很容易实现,但我建议使用SVG。您可以在这里找到一个非常好的SVG库,也可以使用画布库 要使用画布自己完成此操作,只需在mousemove事件中跟踪画布上的鼠标坐标,然后在单击事件中计算鼠标相对于您的线的位置,如果鼠标单击在您的线内,则可以单击该线

我正在做一个项目,我想画一条角线,在这条线的末尾我必须画一个角字符。但我不想使用canvas,因为需求是用户可以通过点击它来选择其中的任何一行。这可能无法通过画布实现。给我一些建议

事实上,我想画下面的图像,也可以选择一个或多个线在它可用。

这在画布上很容易实现,但我建议使用SVG。您可以在这里找到一个非常好的SVG库,也可以使用画布库

要使用画布自己完成此操作,只需在
mousemove事件中跟踪画布上的鼠标坐标
,然后在
单击
事件中计算鼠标相对于您的线的位置,如果鼠标单击在您的线内,则可以单击该线


如果不提供任何代码或您迄今为止尝试过的任何内容,我将无法深入了解更多细节,因为这是一个非常广泛和通用的问题,实际上与任何一件事都不相关。

请尝试css
transform
属性:

我建议您使用库。它将允许您将每条线作为单独的层进行操作,您还可以非常轻松地将鼠标和触摸事件附加到这些层。它非常容易学习和理解,因为它基于jQuery,语法几乎与jQuery相似。

看看animate CSS3功能:


div
{
宽度:100px;
高度:100px;
背景:红色;
位置:相对位置;
动画名称:mymove;
动画持续时间:5s;
/*狩猎与铬*/
-webkit动画名称:mymove;
-webkit动画持续时间:5s;
}
@关键帧mymove
{
从{变换:旋转(0度);}
到{变换:旋转(-90度);}
}
@-webkit关键帧mymove/*Safari和Chrome*/
{
从{-webkit变换:旋转(0度);}
到{-webkit变换:旋转(-90度);}
}
注意:Internet Explorer 9和早期版本不支持动画名称属性

注意:始终指定动画持续时间属性。否则,持续时间为0,将不播放动画


我附上了带问题的图片。
 <!DOCTYPE html>
 <html>
 <head>
 <style> 
 div
 {
 width:100px;
 height:100px;
 background:red;
 position:relative;
 animation-name:mymove;
 animation-duration:5s;

 /* Safari and Chrome */
 -webkit-animation-name:mymove;
 -webkit-animation-duration:5s;
 }

 @keyframes mymove
 {
 from {transform: rotate(0deg);}
 to {transform: rotate(-90deg); }
 }

 @-webkit-keyframes mymove /* Safari and Chrome */
 {
 from {-webkit-transform: rotate(0deg);}
 to {-webkit-transform: rotate(-90deg); }
 }
 </style>
 </head>
 <body>

 <p><strong>Note:</strong> The animation-name property is not supported in Internet Explorer 9 and earlier versions.</p>

 <div></div>

 <p><b>Note:</b> Always specify the animation-duration property. Otherwise the duration      is 0, and the animation will not be played.</p>

 </body>
 </html>