JQuery 当 JQuery 数据表的列崩溃时,raty 不起作用
JQuery raty not working when the columns of JQuery datatable collapses
我在 JQuery 数据表中使用 JQuery raty。当浏览器处于全宽时它工作正常。当数据表的列被折叠时测试响应能力时,raty 星消失了。
我该如何解决这个问题?
HTML:
<td>
<span class="rating" data-score=""></span>
</td>
JS:
$('span.rating').raty({
half: true,
starHalf:'raty/images/star-half.png',
starOff:'raty/images/star-off.png',
starOn:'raty/images/star-on.png',
readOnly: true,
score: function () {
return $(this).attr('data-score');
}
});
SOLUTION
使用下面的代码确保控件在折叠和展开模式下使用 jQuery DataTables 响应扩展正确初始化。
$(document).ready(function() {
var table = $('#example').DataTable({
responsive: {
details: {
renderer: function(api, rowIdx, columns) {
var $details = $.fn.DataTable.Responsive.defaults.details.renderer(api, rowIdx, columns);
initRating($details);
return $details;
}
}
},
drawCallback: function(settings) {
var api = this.api();
initRating(api.table().container());
}
});
});
function initRating(row) {
$('span.rating', row).raty({
half: true,
starHalf: 'https://cdnjs.cloudflare.com/ajax/libs/raty/2.7.0/images/star-half.png',
starOff: 'https://cdnjs.cloudflare.com/ajax/libs/raty/2.7.0/images/star-off.png',
starOn: 'https://cdnjs.cloudflare.com/ajax/libs/raty/2.7.0/images/star-on.png',
readOnly: true,
score: function() {
return $(this).attr('data-score');
}
});
}
DEMO
有关代码和演示,请参阅 this jsFiddle。
LINKS
有关详细信息,请参阅 jQuery DataTables – Responsive extension and custom controls 文章。
我在 JQuery 数据表中使用 JQuery raty。当浏览器处于全宽时它工作正常。当数据表的列被折叠时测试响应能力时,raty 星消失了。
我该如何解决这个问题?
HTML:
<td>
<span class="rating" data-score=""></span>
</td>
JS:
$('span.rating').raty({
half: true,
starHalf:'raty/images/star-half.png',
starOff:'raty/images/star-off.png',
starOn:'raty/images/star-on.png',
readOnly: true,
score: function () {
return $(this).attr('data-score');
}
});
SOLUTION
使用下面的代码确保控件在折叠和展开模式下使用 jQuery DataTables 响应扩展正确初始化。
$(document).ready(function() {
var table = $('#example').DataTable({
responsive: {
details: {
renderer: function(api, rowIdx, columns) {
var $details = $.fn.DataTable.Responsive.defaults.details.renderer(api, rowIdx, columns);
initRating($details);
return $details;
}
}
},
drawCallback: function(settings) {
var api = this.api();
initRating(api.table().container());
}
});
});
function initRating(row) {
$('span.rating', row).raty({
half: true,
starHalf: 'https://cdnjs.cloudflare.com/ajax/libs/raty/2.7.0/images/star-half.png',
starOff: 'https://cdnjs.cloudflare.com/ajax/libs/raty/2.7.0/images/star-off.png',
starOn: 'https://cdnjs.cloudflare.com/ajax/libs/raty/2.7.0/images/star-on.png',
readOnly: true,
score: function() {
return $(this).attr('data-score');
}
});
}
DEMO
有关代码和演示,请参阅 this jsFiddle。
LINKS
有关详细信息,请参阅 jQuery DataTables – Responsive extension and custom controls 文章。