You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
vue-shop-admin-work/public2/ueditor/dialogs/table/edittd.html

87 lines
4.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<!-- 文档类型声明表明这是一个遵循HTML相关标准规范的HTML文档 -->
<html>
<head>
<!-- 页面标题,目前为空,后续可根据实际需求设置具体显示的标题内容 -->
<title></title>
<!-- 引入外部的JavaScript文件路径为相对路径的../internal.js通常这个文件包含了页面通用的一些脚本逻辑 -->
<script type="text/javascript" src="../internal.js"></script>
<style type="text/css">
/* 定义名为.section的类选择器样式用于设置应用了该类的元素的样式 */
.section {
/* 设置元素内文本水平居中对齐 */
text-align: center;
/* 设置元素的上外边距为10px拉开与上方元素的距离 */
margin-top: 10px;
}
/* 对应用了.section类下的input元素设置样式 */
.section input {
/* 设置元素的左外边距为5px拉开与左边元素的距离 */
margin-left: 5px;
/* 设置元素的宽度为70px限定输入框等这类元素的宽度 */
width: 70px;
}
</style>
</head>
<body>
<!-- 创建一个应用了.section类的div元素作为页面中的一个内容区域用于放置相关元素 -->
<div class="section">
<!-- 创建一个span元素其内部文本内容通过id为lang_tdBkColor的变量来动态设置一般会通过脚本在运行时替换成实际文本可能用于提示相关功能等 -->
<span><var id="lang_tdBkColor"></var></span>
<!-- 创建一个文本框类型的input元素id为J_tone可能用于输入或显示与表格单元格背景颜色相关的值等 -->
<input type="text" id="J_tone" />
</div>
<script type="text/javascript">
// 获取页面中id为J_tone的元素通常用于后续操作中对这个特定的输入框元素进行交互逻辑处理
var tone = $G("J_tone"),
// 创建一个UE.ui.ColorPicker实例用于弹出颜色选择器传入编辑器对象这里的editor应该是外部定义好的编辑器相关对象方便用户选择颜色
colorPiker = new UE.ui.ColorPicker({
editor: editor
}),
// 创建一个UE.ui.Popup实例用于弹出一个包含颜色选择器的浮窗之类的界面传入编辑器对象并将前面创建的颜色选择器作为其内容部分
colorPop = new UE.ui.Popup({
editor: editor,
content: colorPiker
});
// 给tone元素也就是id为J_tone的输入框绑定点击事件处理函数当点击该元素时显示颜色选择器的弹出浮窗并定位到该输入框位置
domUtils.on(tone, "click", function () {
colorPop.showAnchor(tone);
});
// 给document文档对象绑定鼠标按下事件处理函数当在页面任意位置点击鼠标时隐藏颜色选择器的弹出浮窗避免其一直显示影响操作
domUtils.on(document, 'mousedown', function () {
colorPop.hide();
});
// 给颜色选择器添加"pickcolor"事件的监听器当用户在颜色选择器中选择了颜色后将选择的颜色值设置到tone元素输入框的value属性中也就是显示选择的颜色并隐藏颜色选择器弹出浮窗
colorPiker.addListener("pickcolor", function () {
tone.value = arguments[1];
colorPop.hide();
});
// 给颜色选择器添加"picknocolor"事件的监听器当用户在颜色选择器中取消选择颜色比如点击了取消按钮之类的操作将tone元素输入框的value属性设置为空字符串也就是清除显示的颜色并隐藏颜色选择器弹出浮窗
colorPiker.addListener("picknocolor", function () {
tone.value = "";
colorPop.hide();
});
// 给dialog对象可能是对话框相关对象的onok属性设置一个函数当点击对话框的确定按钮时执行编辑器editor对象的"edittd"命令传入tone元素输入框当前的值作为参数可能用于将设置的颜色应用到相关表格单元格等操作中
dialog.onok = function () {
editor.execCommand("edittd", tone.value);
};
// 获取编辑器editor对象中当前选择内容的起始位置这里的具体实现依赖于编辑器相关的API这个start值后续用于查找所在的单元格等
var start = editor.selection.getStart(),
// 通过查找起始位置所在的父元素,按照指定的标签名(["td", "th"]表示查找td或th标签并设置一些查找条件true可能表示严格查找等相关条件具体依赖domUtils相关函数的实现获取所在的单元格元素如果存在的话可能是用于获取当前选中的表格单元格后续可以获取其样式等信息
cell = start && domUtils.findParentByTagName(start, ["td", "th"], true);
// 如果找到了对应的单元格元素cell不为空
if (cell) {
// 获取该单元格的背景颜色样式值通过调用domUtils的相关函数传入单元格元素和要获取的样式属性名'background-color'表示背景颜色)来获取
var color = domUtils.getComputedStyle(cell, 'background-color');
// 通过正则表达式判断获取到的颜色值是否是以'#'开头通常HTML中颜色值以'#'开头表示十六进制颜色代码等格式),如果是则执行下面的操作
if (/^#/.test(color)) {
// 将获取到的颜色值设置到tone元素输入框的value属性中也就是将单元格当前的背景颜色显示在输入框中方便用户查看或基于此进行修改等操作
tone.value = color
}
}
</script>
</body>
</html>