虚线仪表板链接小部件
Dashing dashboard linking widgets
我很难在我的仪表板上链接小部件。我阅读了另一篇文章并从潇洒的社区得到了一些帮助,但是,只是无法链接小部件
我修改了我的 text.coffee 以包含此部分(示例是我的另一个仪表板)
click: (event) ->
location.href = "sample"
当我单击我的文本小部件时,没有任何反应。我也尝试过这样做,但什么都没有。
click: (event) ->
location.href = "www.stackoverflow.com"
但是,当我只是将以下行添加到我的meter.coffee的onData部分时,它会重定向到 stackoverflow.com。
location.href = "www.stackoverflow.com"
我做错了什么?您有我可以尝试的示例吗?
编辑1:
我也尝试了以下建议,但没有任何运气。
click: (e) ->
e.preventDefault()
location.href = "http://www.stackoverflow.com"
得到了潇洒社区的帮助。这是它的工作原理。只需修改您的仪表板 erb 即可链接您想要查看的页面
<li data-row="2" data-col="2" data-sizex="2" data-sizey="1" onclick="location.href='http://www.stackoverflow.com';">
<div data-id="test_text_widget" data-view="Text" data-title="Test"</div>
</li>
选项 1
当想要在单击时在新选项卡中打开链接,并且只想将其放在仪表板上的某些磁贴上时,以下内容将起作用:
onClick="javascript: window.open('http://url', '_blank');"
例如,在您的dashboard.erb
文件中,您将拥有以下内容:
注意:在这个例子中,我设置了切换台(需要安装dashing-contrib),并用于在使用不同小部件(热度和默认列表)的2个磁贴之间切换。这将适用于创建的任何磁贴。这正是我碰巧使用它的地方。
<% content_for :title do %>Dashboard Name<% end %>
<div class="gridster">
<ul>
<li data-switcher-interval="5000" data-row="1" data-col="1" data-sizex="1" data-sizey="1" onClick="javascript: window.open('http://www.stackoverflow.com', '_blank');">
<div data-id="data-id-name from .rb job" data-view="Hotness" data-title="Title of Widget" data-moreinfo="more information text" data-cool="1" data-warm="30"></div>
<div data-id="data-id-name from .rb job" data-view="List" data-unordered="true" data-title="Title of Widget" data-moreinfo="more information text"></div>
<i class="fa fa-warning icon-background-small"></i>
</li>
</ul>
</div>
选项 2
另一种方法是在dashboard.erb
顶部添加一个函数。
注意:如果没有为磁贴提供 url 链接,此示例将使所有磁贴可单击并打开一个空白选项卡,因此它不是一个理想的解决方案,但确实有效*
$(function bringToTop() {
$('li').live('click', function(e){
var widget = $(this).find('.widget');
if(widget.data('url')){
var url = widget.data('link');
var win = window.open(url, '_blank');
win.focus();
}
});
});
因此,您的整个dashboard.erb
文件应如下所示:
<script type='text/javascript'>
$(function bringToTop() {
$('li').live('click', function(e){
var widget = $(this).find('.widget');
if(widget.data('url')){
var url = widget.data('link');
var win = window.open(url, '_blank');
win.focus();
}
});
});
</script>
<% content_for :title do %>Dashboard Name<% end %>
<div class="gridster">
<ul>
<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
<div data-id="mydata" data-view="Hotness" data-title="Data Title" data-cool="20" data-warm="1000" data-link='http:''www.stackoverflow.com'></div>
</li>
</ul>
注意:
我尚未测试但在网上搜索时发现的是,使用我提供的上述任一选项都可能无法在iOS设备上工作。这个问题可能已经解决了,而且我不会以任何方式敲打 Gridster,而是与 Gridster 有关。在 Gridster 的 iOS 设备上存在一个未解决的点击事件问题。
感谢 GitHub 上的 Phylor 提供临时修复/解决方案,该解决方案已确认在 2016 年 2 月 21 日工作(不是我)。
只需将以下内容添加到dashboard.erb
文件的顶部:
<script type='text/javascript'>
function openUrl(obj) {
var widget = $(obj).find('.widget');
var url = widget.data('url');
window.open(url, '_blank');
}
$(function() {
$('li').live('click', function(e){
openUrl(this);
});
$('li').live('touchend', function(e){
openUrl(this);
});
});
</script>
这是我的第一篇文章,所以我对任何格式错误表示歉意,但我认为是时候开始回馈帮助了我很多的社区了。希望这有帮助!
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 如何使用jQuery自动打开页面上的所有链接
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- jquery动画可以通过编程链接吗
- 在单击href链接的同时下载文件
- 我想知道facebook是如何将你发布的内容(如网络链接)更改为对话框中的小部件的
- 如何使用Foundaton 6更改小屏幕上顶级链接的功能
- 将 JavaScript 与 GWT 小部件链接
- 引导 - 链接停止以小分辨率工作
- 虚线仪表板链接小部件
- 用JS中的字符串为所有非站点内的链接加上前缀..你能校对一下我拼凑的这个快速的小脚本吗
- 当使用javascript onclick I'我在IE中得到了一个小链接图标,我该如何删除它
- 闭包编译器可以使用链接作为最小化技术吗?
- 如何链接zopim聊天小部件与自定义表单
- 在socialstatistics小部件上更改链接颜色
- 当链接在小窗口或移动版本中点击时,Web浏览器无法滚动到顶部
- 检查Javascript/PHP小部件中的链接
- 最小化文本链接下的表(已使用jQuery和Javascript)
- 尝试将图像制作成 Blogger 中 HTML/JavaScript 小工具中的链接
- 当我点击链接时,新页面没有在小标签上打开