好的,这可能是一个奇怪的问题。
我的任务是在公司网站上创建一个随机出现的按钮。我的老板来找我指出CNN就是一个例子。他说有一个反馈按钮并不总是在网站上随机出现。我的猜测是,元素设置为根据满足的条件显示,并非随机。
我去了CNN,我找不到反馈按钮,但他向我保证他已经看过几次(因为他经常访问该网站)。但他无法提供有关可能出现的内容的任何见解。
有人做过这样的事吗?我从来没有做过这样的事情,所以不确定将此设置为什么条件。
非常感谢任何帮助。 非常感谢。
答案 0 :(得分:2)
创建一个元素数组,您要在其中附加按钮,然后随机抓取一个按钮并添加按钮。
var arr = ['#navigation', '#help', '#etc'];
function showButton() {
var random = Math.random() * arr.length;
$(arr[random]).append("<button id='someId'>My Button Text</button>");
}
这尚未经过测试,但应该可行。如果它没有检查Math.random() * arr.length
代码。你可能需要加1才能得到所有3个项目,但我不这么认为。
答案 1 :(得分:1)
var randFactor = 0.5;
if (Math.random() < randFactor) {
// show button
}
答案 2 :(得分:0)
如果您要在javascript中执行此操作,只需使用Math.random()
生成0到1之间的随机数。
然后你的病情可以使用:
if(Math.random() < .1) ...
(调整.1以适应您希望按钮显示的频率)
答案 3 :(得分:0)
你可以这样做:
if (Math.random() > 0.5){
$('#button').hide();//hide the button
}
答案 4 :(得分:0)
有很多jQuery反馈插件可以完成你所描述的内容。一些比较流行的插件是Feedback Badge和UI.ImFeedback。这些插件通常位于页面的右侧或左侧,处于固定位置,允许用户以非突兀的方式提交反馈。
您可以根据任意数量的预定义条件自定义这些插件以显示或隐藏,但通常您要求用户提供反馈的原因将分为以下类别:
我创建了一个关于如何通过html / css here实现反馈按钮的jsFiddle。布局只是添加一个小div来坐在页面上的固定位置,使用一点css:
<div id="feedback">
<a href="#">
<img src="http://mediaformations.com/examples/images/feedback.png" />
</a>
</div>
和css:
#feedback a{ display:block; position:fixed; top:200px; right:-1px; background:green; padding:7px 5px;
border:1px solid #030;
border-left-color:#060;
border-top-color:#090;
}
#feedback a:hover{background:#030;border:1px solid #030;}
我添加了一些简单的javascript逻辑,以便在需要时隐藏反馈。您可以在站点中添加一些逻辑,以便在需要时隐藏/显示#feedback
div。功能如下所示:
$("#hide").click(function() {
$("#feedback").hide('slow', function() {
alert('Feeback toggled.');
});
});
$("#display").click(function()
$("#feedback").show('slow', function() {
alert('Feeback toggled.');
});
});
您可以在页面上满足上述某些条件(或其他条件)时调用这些条件。
还有一篇关于实施反馈按钮的文章here