- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用过一个插件 http://www.jqueryscript.net/demo/Simple-Bar-Chart-Plugin-with-jQuery-Bootstrap-jchart/但问题是,我无法使条形图可点击。我的 moto 是制作每个栏链接,如果用户单击它,它将在新链接上重定向用户。但我做不到,我试过但只能为每个栏提供一个 url。请帮我html页面上的代码:
<div id="bar_of_pies" data-sort="true" data-width="300" class="jChart chart-sm" name="">
<div class="define-chart-row " data-color="#dfdfdf" title="1">13</div>
<div class="define-chart-row" data-color="#F4BE44" title="2">22</div>
<div class="define-chart-row" data-color="#dfdfdf" title="3">20</div>
<div class="define-chart-row" data-color="#F4BE44" title="4">18</div>
<div class="define-chart-row" data-color="#dfdfdf" title="5">16</div>
<div class="define-chart-row" data-color="#F4BE44" title="6">14</div>
<div class="define-chart-row" data-color="#dfdfdf" title="5">12</div>
<div class="define-chart-row" data-color="#F4BE44" title="6">10</div>
<div class="define-chart-footer">10</div>
<div class="define-chart-footer">20</div>
<div class="define-chart-footer">30</div>
</div>
js 到事件图:
$(document).ready(function () {
$("#bar_of_pies").jChart({
sort: false,
x_label:'Hello',
});
})
});
最佳答案
我已经 fork 了你的 fiddle 并在这里更新了它: http://jsfiddle.net/5ryEZ/5/
变化:必须编辑该插件才能使其工作。我将整个插件复制到 document.ready() 并进行了更改。
<div class="define-chart-row" data-clicker="http://google.com" data-color="#009182" title="1">13</div>
您的 document.ready 代码位于底部。对于 url,将“data-clicker”属性添加到 div。
/* replace this code in the jChart.js */
$.fn.jChart = function (options) {
var selector = $(this);
var default_color = "#6b9bd6";
var bar_height = 19;
var settings = $.extend({
width: 750,
clicker: "http://wditot.in",
name: null,
type: "bar",
headers: null,
values: null,
footers: Array(),
sort: false,
sort_colors: false,
colors: Array(),
x_label: null
}, options);
//Initialize some settings that can be set via HTML
if (settings.name == null) {
settings.name = $(this).attr("name");
}
if ($(this).data("sort") == true) {
settings.sort = true;
}
if ($(this).data("width") != null) {
settings.width = parseInt($(this).data("width"));
}
if ($(this).data("x_label") != null) {
settings.x_label = $(this).data("x_label");
}
if ($(this).data("clicker") != null) {
settings.clicker = $(this).data("clicker");
}
var chart_width = settings.width;
if ($(this).hasClass("chart-sm")) {
bar_height = 17;
} else if ($(this).hasClass("chart-lg")) {
bar_height = 25;
} else if (settings.width != null) {
chart_width = parseInt(settings.width);
}
checkForHTMLSettings();
//Clear the data in the jChart div
$(this).html("");
//Create the html containers for the chart
var chart_title = $("<div>", {
class: "chart-title",
html: settings.name
});
var legend_left = $("<div>", {
class: "legend legend-left"
});
var x_label = $("<span>", {
class: "chart-x-label",
html: settings.x_label
});
//Calculate what the chart width should be
var max_data = Math.max.apply(Math, settings.values);
var max_footer = Math.max.apply(Math, settings.footers);
var maxes = [max_data, max_footer];
var chart_max = Math.max.apply(Math, maxes);
var container_width = chart_width + 250;
var chart_container = $("<div>", {
class: "chart-container",
width: container_width + "px"
});
var chart = $("<div>", {
class: "chart",
width: chart_width + "px"
});
var legend_bottom = $("<div>", {
class: "legend-bottom"
});
//Place the containers into the target element
$(this).append(chart_container);
chart_container.append(chart_title);
chart_container.append(legend_left);
chart_container.append(chart);
//Sort the data if the setting is enabled (Insertion sort)
if (settings.sort) {
for (var i = 1; i < settings.values.length; i++) {
var j = i;
while (j > 0 && settings.values[j - 1] < settings.values[j]) {
var temp = settings.values[j];
var head_temp = settings.headers[j];
settings.values[j] = settings.values[j - 1];
settings.values[j - 1] = temp;
//Sort headings
settings.headers[j] = settings.headers[j - 1];
settings.headers[j - 1] = head_temp;
//Sort colors
if (settings.sort_colors) {
var color_temp = settings.colors[j];
settings.colors[j] = settings.colors[j - 1];
settings.colors[j - 1] = color_temp;
}
j--;
}
}
}
//Loop through headings and create/place them and their corresponding value bars
for (var i = 0; i < settings.headers.length; i++) {
var heading = $("<div>", {
class: "heading heading-left",
style: "height: " + bar_height + "px;font-size: 10pt;",
html: settings.headers[i]
});
var bar_width = (settings.values[i] / chart_max) * chart_width;
var bar = $("<div>", {
class: "bar",
"data-placement": "right",
"data-toggle": "tooltip",
title: commaSeparateNumber(settings.values[i]),
style: "height:" + bar_height + "px;background-color:" + settings.colors[i % settings.colors.length],
width: bar_width,
onclick: settings.clicker[i]
});
legend_left.append(heading);
chart.append(bar);
}
chart.append(legend_bottom);
for (var i = 0; i < settings.footers.length; i++) {
var margin = "margin-left:" + ((settings.footers[i] / chart_max) * chart_width - 9).toString() + "px;";
var chart_label_bottom = $("<div>", {
class: "chart-label chart-label-bottom",
style: margin,
html: commaSeparateNumber(settings.footers[i])
});
var margin = "margin-left:" + ((settings.footers[i] / chart_max) * chart_width - 2).toString() + "px;";
var chart_label_hr = $("<div>", {
class: "chart-label-hr",
style: margin
});
legend_bottom.append(chart_label_bottom);
chart.append(chart_label_hr);
legend_bottom.append(x_label);
}
//Enable hover details
$(".bar").tooltip();
return this;
/**
* Checks for settings defined in the HTML
* like chart-define-row and chart-define-footer classes
*/
function checkForHTMLSettings() {
//Check for HTML defined bar chart data
if (selector.find(".define-chart-row").length > 0) {
settings.headers = Array();
settings.values = Array();
settings.clicker = Array();
selector.find(".define-chart-row").each(function () {
settings.headers.push($(this).attr("title"));
var value = $(this).html();
if (value == null || value == "") {
settings.values.push(0);
} else {
settings.values.push(parseInt(value));
}
var color = $(this).data("color");
var clicker = $(this).data("clicker"); {
if (clicker == null || clicker == "") {
settings.clicker.push('#');
} else {
settings.clicker.push(clicker);
}
}
if (color != null) {
settings.sort_colors = true;
settings.colors.push(color);
} else {
settings.colors.push(default_color);
}
});
} else {
settings.colors.push(default_color);
}
//Check for HTML defined footers
if (selector.find(".define-chart-footer").length > 0) {
settings.footers = Array();
selector.find(".define-chart-footer").each(function () {
var footer = $(this).html();
if (footer != null && footer != "") {
settings.footers.push(parseInt(footer));
}
});
}
}
/**
* Converts a number into a comma separated string
*/
function commaSeparateNumber(val) {
while (/(\d+)(\d{3})/.test(val.toString())) {
val = val.toString().replace(/(\d+)(\d{3})/, '$1' + ',' + '$2');
}
return val;
}
};
/* End of code to be copied into jChart.js */
关于jquery - 条形图插件 - 使每个条形图都可点击(每个条形图都有不同的链接),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24690560/
我有一个网站,并且我使用 javascript sdk 添加了“点赞”按钮。 这是代码 (function(d, s, id) { var js, fjs = d.g
我知道 HTML 是逐行读取的。当您链接多个 css 文件(如规范化文件和样式表文件)时,由于 CSS 重要性特异性和源顺序,样式表文件应链接在规范化文件之后。看起来这不会影响链接的 JavaScri
我正在使用官方 Bootstrap site 提供的 CDN 链接在我的网络应用程序中使用面板进行测试 在彻底检查我的代码后,面板没有显示。 但是我在 SO 上看到了类似的帖子并且 CDN 链接不同
这里是编码初学者。我正在尝试为我的移动设备网站设置断点,以便我的网站适合小屏幕。我只是想检查如果我缩小视口(viewport)的宽度,背景颜色是否会改变,但没有发生任何变化。也许我只是对一个简单的错误
举一个我想要的例子,想象一下这个字符串: $text = 'lorem ipsum About us lorem ipsum'; 如果此字符串包含一个 href 以 / 开头的 anchor 链接,则
如何链接到 LaTeX 文档的另一部分或子部分?这种链接的常规范式是什么,像[链接名称]那样写,或者像网页超链接那样写? 最佳答案 链接到另一个部分需要您的部分进行一些额外的标记。要使用的命令是: \
我有一个订单表,其中包含订单号、客户 ID 和代理 ID。然后有一个带有 id 的客户表和一个带有 id 的代理表。 我需要获取所有具有来自代理 ID 'a03' 和代理 ID 'a05' 的订单的客
假设我有: dic = {"z":"zv", "a":"av"} ## Why doesn't the following return a sorted list of keys? keys = d
我在尝试链接到外部库时得到了一些奇怪的结果。如果我从命令行运行以下命令: gcc fftwTest.c -I../extlib/fftw-3.3.5-dll32 -L../extlib/fftw-3.
我认为我没有正确理解 jQuery 链接。我正在遍历一个数组并尝试将 div 元素添加到我的包装器 CSS 类中,每个 div 元素都有一个“click”类和自定义 css top 和 left 属性
HTML 使用超级链接与网络上的另一个文档相连。几乎可以在所有的网页中找到链接。点击链接可以从一张页面跳转到另一张页面。 HTML 超链接(链接) HTML使用标签 a 来设置超文本链接。 超链
这个问题在这里已经有了答案: How do I link to part of a page? (hash?) (7 个答案) Scroll Automatically to the Bottom
我想创建一个 Docker Swarm 集群,运行一个 Elasticsearch 实例、一个 MongoDB 实例和一个 grails 应用程序,每个都在单独的机器上。我正在使用 Docker Ma
我正在尝试将 CakePHP HTML Linker 用于以下代码 Add Cuisine 由于 span 标签需要在 a 标签内。我无法根据需要获得输出。关于如何完成它的任何建议? 最佳答案 禁用链
大家好, 我最近开发了一个应用程序,很快就会提交到 App Store。我想免费提交这个应用程序,并想知道我是否可以实现一个带有 PayPal 捐赠标志的按钮,上面基本上写着“捐赠用于开发”或与此相关
我想尝试在 dlang 中使用 libuv。我下载了这样的 dlang 绑定(bind): git clone git@github.com:tamediadigital/libuv.git 现在我接
我有一个节点(节点 a),各种其他节点(节点 b/c/d/e)与之引用。 我可以创建一个带有参数的 View 作为我正在查看的节点(节点 a),并获取引用该节点的节点列表。 基本上在节点 a 查看节点
我正在尝试建立一个常见问题页面,上面有目录,下面有答案。我想点击目录中的一个问题,并在同一页面上链接到相应的答案。我如何在 CakePHP 中使用 $this->Html->link() 执行此操作方
在 WooCommerce 3.0+ 中,我使用 js 创建了一些选项卡,每个选项卡中包含来自不同类别的产品。我已经设法修改了简单产品的添加到购物车链接,其中点击了 addtocart 按钮它进入下一
Delphi 2007/2009 奇怪的问题在这里: 根据设计时定义的组件属性,是否可以在链接中包含文件或保留文件? 示例:如果我将 SomeProperty 保留为真,则在编译时,单元 SomeUn
我是一名优秀的程序员,十分优秀!