1. js 代码
$('#myTable tbody').on("click", "i[data-toggle='ykenan']", function () {
var recordsTotal = $myTable.DataTable().page.info().recordsTotal;
var fnGetData = $myTable.dataTable().fnGetData();
var table_x = $(this).parents("td").parent().parent().find("tr").index($(this).parents("td").parent()[0]);
var table_y = $(this).parents("td").index();
var index_x = $myTable.DataTable().row($(this).parents("td").parents("tr")).index();
var index_y = $myTable.DataTable().column($(this).parents("td")).index();
console.log("table: " + table_x + "," + table_y + ";" + "data: " + index_x + "," + index_y + ";");
var $_span = $(this).parents("td").children("span");
if ($_span.length === 1) {
var $i = $(this);
$i.wrap("<span></span>");
$i.parents("span").attr("style", "position: relative;");
$i.after("<span></span>");
var $i1 = $(this).parents("td").children("span").children("span");
$i1.attr("style", "position: absolute;padding: 5px 20px;width: max-content;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;max-width: 500px;");
if(index_y === 1) {
$i1.html(fnGetData[index_x].one);
} else if(index_y === 2) {
$i1.html(fnGetData[index_x].two);
} else if(index_y === 3) {
$i1.html(fnGetData[index_x].three);
} else if(index_y === 4) {
$i1.html(fnGetData[index_x].four);
} else if(index_y === 5) {
$i1.html(fnGetData[index_x].five);
} else if(index_y === 6) {
$i1.html(fnGetData[index_x].six);
} else if(index_y === 7) {
$i1.html(fnGetData[index_x].seven);
}
var page = $myTable.DataTable().page.info().page;
var pages = $myTable.DataTable().page.info().pages;
if(page !== pages - 1) {
if (table_x <= 5) {
var height_one = 381 - 25 * table_x;
if ($i1.height() <= height_one) {
if (index_y < 5) {
$i1.attr("style", "position: absolute; top: -8px;left: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;");
} else if (index_y >= 5) {
$i1.attr("style", "position: absolute; top: -8px;right: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;");
}
} else {
if (index_y < 5) {
$i1.attr("style", "position: absolute; top: -8px;left: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;height:" + height_one + "px;overflow-y: auto;");
} else if (index_y >= 5) {
$i1.attr("style", "position: absolute; top: -8px;right: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;height:" + height_one + "px;overflow-y: auto;");
}
}
} else {
var height_two = 381 - 25 * (11 - table_x);
if ($i1.height() <= height_two) {
if (index_y < 5) {
$i1.attr("style", "position: absolute; bottom: -8px;left: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;");
} else if (index_y >= 5) {
$i1.attr("style", "position: absolute; bottom: -8px;right: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;");
}
} else {
if (index_y < 5) {
$i1.attr("style", "position: absolute; bottom: -8px;left: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;height:" + height_two + "px;overflow-y: auto;");
} else if (index_y >= 5) {
$i1.attr("style", "position: absolute; bottom: -8px;right: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;height:" + height_two + "px;overflow-y: auto;");
}
}
}
}else {
if ($i1.height() <= height_one) {
if (index_y < 5) {
$i1.attr("style", "position: absolute; top: -8px;left: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;");
} else if (index_y >= 5) {
$i1.attr("style", "position: absolute; top: -8px;right: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;");
}
} else {
if (index_y < 5) {
$i1.attr("style", "position: absolute; top: -8px;left: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;height:112px;overflow-y: auto;");
} else if (index_y >= 5) {
$i1.attr("style", "position: absolute; top: -8px;right: 25px;background-color: #117A8B;padding: 5px 20px;width: max-content;box-shadow: 12px 12px 27px rgba(0, 0, 0, 0.05), 12px 12px 3px rgba(0, 0, 0, 0.1);z-index: 1000;white-space: pre-wrap; word-break: break-all; overflow-wrap: break-word;color: #fff;max-width: 500px;height:112px;overflow-y: auto;");
}
}
}
$i1.hide();
$i1.show(300);
$i.toggleClass("fa-plus-square fa-minus-square");
$i.click(function () {
$(this).toggleClass("fa-plus-square fa-minus-square");
if ($(this).hasClass("fa-minus-square")) {
$i1.show(300);
} else {
$i1.hide(250);
}
});
}
});