Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.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
css或jquery中的圆形停靠/菜单_Jquery_Html_Css - Fatal编程技术网

css或jquery中的圆形停靠/菜单

css或jquery中的圆形停靠/菜单,jquery,html,css,Jquery,Html,Css,是否可以使用css或jquery创建循环菜单或停靠 我有一组图像作为停靠项目,需要显示为圆形停靠。。。然而,码头上的物品数量不是恒定的,可能会有所不同。。。。因此,我不能倾向于使用常量值以预定义的方式定位每个项目。Ajax将一些图像加载到这个特定的div中,我需要使用css或jquery来设置样式,以便它们显示为循环停靠项。关于如何实现这一点有什么想法吗? 我想在具体的实现浏览器,但我也欢迎如果有人有一些解决方案,具体到少数浏览器 更新 我想我并不想要一份馅饼菜单。。。随着码头物品数量的增加,它

是否可以使用css或jquery创建循环菜单或停靠 我有一组图像作为停靠项目,需要显示为圆形停靠。。。然而,码头上的物品数量不是恒定的,可能会有所不同。。。。因此,我不能倾向于使用常量值以预定义的方式定位每个项目。Ajax将一些图像加载到这个特定的div中,我需要使用css或jquery来设置样式,以便它们显示为循环停靠项。关于如何实现这一点有什么想法吗?
我想在具体的实现浏览器,但我也欢迎如果有人有一些解决方案,具体到少数浏览器

更新
我想我并不想要一份馅饼菜单。。。随着码头物品数量的增加,它很容易变得一团糟。我在找螺旋码头。 我所说的“螺旋”是指菜单项必须按以下顺序排列。。

尽管您指定不需要饼图菜单,但可能有用(或原始链接之一)。项目的位置是经过计算的,因此无需担心添加/删除。

这是否有意义?
我相信你可以用


尝试用一个简单的
.css({'margin-left':x,'margin-top':y})替换插件中的动画功能

数学操作已经存在,您只需在静态位置变换动画(为菜单中的每个项目提供不同的偏移量)


对不起,我没有时间写一些代码,做起来比解释容易:D

我想我明白了!这只是一个基本概念,请自己调整一下

请参阅以下内容和下面的代码:

var items = 10;
var a = 20;
var b = 1; // updated an extra b, used for rate (see update section below)
var centerX = $('.content').innerWidth()/2; // and some adjustment of half its own size
var centerY = $('.content').innerHeight()/2;
for(var i = 0; i < items; i++)
{
    var yPos = a * i * Math.cos(b*i) + centerY;
    var xPos = a * i * Math.sin(b*i) + centerX;
    var item = '<div class="item" style="top:' + yPos   + 'px; left:' + xPos + 'px;" />';
    $('.content').append(item);
}
var项=10;
var a=20;
变量b=1;//更新了额外的b,用于费率(参见下面的更新部分)
var centerX=$('.content').innerWidth()/2;//并对其自身大小的一半进行一些调整
var centerY=$('.content').innerHeight()/2;
对于(变量i=0;i
以及一些用于测试目的的CSS:

.item
{
    width:10px;
    height:10px;
    position: absolute;
    background-color:red;
}

.content
{
    position:relative;
    height:300px;
    width:300px;
    background-color:green;
}

<div class="content">
</div>
.item
{
宽度:10px;
高度:10px;
位置:绝对位置;
背景色:红色;
}
.内容
{
位置:相对位置;
高度:300px;
宽度:300px;
背景颜色:绿色;
}
更新:对评论的答复

YPO和XPO的功能是向外生成项目,它们从中心点开始。通过在
Math.cos(b*i)
中定义不同的
a
和额外的
var b
。有可能改变div的出现率和总螺旋的传播。螺旋线的扩展由
a
定义,因为它定义了振幅。div的显示率由新的
b
定义

因此,较小的
b
意味着角度较低,意味着螺旋上的距离较近。 较小的
A
表示振幅较低,表示在x轴和y轴上距离较近

如果图像的数量不可预测,那就无关紧要了,因为螺旋正在消失。当然,当添加太多时,这会给您带来问题


另一个解决方案是在PHP中执行此操作,因为它没有任何动态操作,所以您可以在后端执行此操作。forloop和all的功能可能相同,但在PHP中打印语句的功能可能相同。

您是否正在寻找与jQuery兼容的饼图菜单(也称为径向菜单)?什么是“螺旋码头”?随着码头物品数量的增加,圆形码头很容易弄乱。。相反,我想要一个螺旋形的船坞,我说的是几何螺旋。。。就像我上面更新的图像一样..你想让div也旋转吗?我希望不是…+1因为巨大的催眠图像会伤害我的眼睛我期待着一个螺旋码头伙计们,水平和垂直码头有很多变体,但这不是我真正期待的,即使有人对如何实现这一点有任何见解,我欢迎他们分享这些想法……你能给我一个这方面的工作示例吗。。?我不明白你在做什么。正在添加类项的空div。?它们应该是圆形或螺旋形排列。?那是你的主意吗。?我使用的是chrome,没有观察到任何视觉效果。你能帮我解决这个问题吗?@sasidhar:你查过答案中的jsFiddle了吗?至少在FF和IE8中工作。还没有检查chrome。@sasidhar:不知道这张图片在网络上是否停留很长时间。这是对我的JSFIDLE在Chrome8.0中的测试。糟糕的是,我之前尝试的时候没有包含jquery插件,现在我该如何使这些项目动态化。我的意思是,我的php文件写入n个图像,这些图像将以这种螺旋方式显示,并且它写入的图像数量是不可预测的。那么我该怎么做呢?@sasidhar更新了我的答案。希望它能像那样帮助你。哈哈,当我写答案时,那个网站坏了……用一个新链接编辑;)