- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经在我的应用程序中实现了 JQueryTE。除了 JQueryTE 必须提供的常用工具之外,我还想包含一个下拉选择器,其中包含一个充当占位符的预定义字段列表,例如 [[Title]]、[[FirstName]] 等。我知道它是可能的CKEditor 使用占位符插件,但可以使用 JQueryTE 完成吗?
我想到的最明显的方法是尝试向工具栏添加/附加一个选项菜单,这将触发一些添加字段名称的代码,但运气不佳。
有人可以看一下我的 jsfiddle 吗? jsfiddle
http://jsfiddle.net/jalz/hou94u8a/2/
$('.jqte-primary').jqte(
{
title: true,
format: true,
fsize: true,
color: true,
b: true,
i: true,
u: true,
ol: true,
ul: true,
sub: true,
sup: true,
outdent: true,
indent: true,
left: true,
center: true,
right: true,
strike: true,
link: true,
unlink: true,
remove: true,
rule: true,
source: false
}
);
$( ".jqte_toolbar" ).append( "<span style=\"margin-left: 12px; padding-top: 6px; vertical-align: middle;\"><a href=\"\" class=\"save_link\">Save</a></span>" );
/* this is the one that does not work - this control does not display in JQueryTE and then figure out how to fire the value chosen in the appropriate place */
selectValues = { "1": "test 1", "2": "test 2" };
$.each(selectValues, function(key, value) {
$('.jqte_toolbar').append($("<option/>", {
value: key,
text: value
}));
});
$( ".jqte_toolbar" ).append( "<span style=\"margin-left: 12px; padding-top: 6px; vertical-align: middle;\"><a href=\"\" class=\"field_list\">End</a></span>" );
$(".field_list").click( function () {
/* Insert the value into */
alert('insert value');
} )
非常感谢
最佳答案
希望这对任何需要做类似事情的人有所帮助。我使用的是 JQTE v 1.4 和 JQuery 3.4 以及 JQuery-ui 1.12。我所做的是模仿已经具有所需行为的文本格式组合框。
在此示例中,列表是通过 AJAX 调用动态填充的,这就是我使用动态元素的 Id 的原因;最重要的是,我需要根据参数将具有不同内容的相同组合框放置一次,因为有许多 jqte 动态添加到我的页面中。鉴于这种情况,主入口:
$("div[id^=\"jqteContainer_\"]").each(function(){
let currParamId = $(this).attr("id").split("_")[1]; //Obtain the id which have the param to know which combo belongs to which jqte toolbar
let currentCombo = $(this);
$.ajax("getData.[php/jsp/asp/aspx]",{ // The AJAX call to get the information for the options
data: { id: currParamId },
success: function(dataResponse){
let data = dataResponse.data; //Assuming data is an array with the information
let newOptions = "";
for(let i=0; i<data.length; i++){ //Mimicking the HTML and CSS of jqte format combo box for each option
newOptions += "<a class=\"jqte_format jqte_format_0 unselectable optMyClass\" data-myid=\"" + data[i].myId + "\" data-otherid=\"" + data[i].otherId + "\" role=\"menuitem\" unselectable=\"on\" style=\"user-select: none;\">" + data[i].name + "</a>";
}
// Mimicking the HTML and CSS of the combo box container as jqte format combo box container
currentCombo.children("div.jqte").children("div.jqte_toolbar").append("<div class=\"jqte_tool jqte_tool_1 unselectable\" role=\"button\" style=\"user-select: none;width:15%\" unselectable=\"on\"><a id=\"myCustomCombo_" + currParamId + "\" data-myid=\"" + currParamId +"\" class=\"jqte_tool_label unselectable myCustomCombo\" unselectable=\"on\" style=\"user-select: none;width:95%\"><span class=\"jqte_tool_text unselectable nowrap\" unselectable=\"on\" style=\"user-select: none;\">My Combo Label</span><span class=\"jqte_tool_icon unselectable\" unselectable=\"on\" style=\"user-select: none;\"></span></a><div id=\"myComboOptions_" + currParamId + "\" class=\"jqte_formats unselectable\" unselectable=\"on\" style=\"user-select: none; display: none;\">" + newOptions + "</div></div>");
},
error: showResult,
method: "POST"
});
});
$("body").on("click", ".myCustomCombo", function( event ) {
event.preventDefault();
$("#myComboOptions_"+$(this).attr("data-myid")).css("display","block");
});
$("body").on("click", ".optMyClass", function( event ) {
event.preventDefault();
// Your code per option. you can use the data-xxxx to differentiate
});
首先,我必须在页面中的每个 jqte 中添加组合框。就我而言,我有很多 jqte-s。但是,如果您只有一个 ID,则只需设置您的 ID 即可避免这种情况。
接下来是模仿 jqte 的格式组合框,用于列出文本格式。第一部分是添加选项,它们是一堆 anchor (标签),其中包含代码所需的信息,以便区分每个 anchor 和组合框(如果需要)。在本例中,选项来自 AJAX 调用,但它可以替换为模仿此处显示的 HTML 的任何静态 HTML。
实现我们的选项后,它们被添加到相应的 jqte 工具栏,它是 jqte 容器的孙子(通常是一个 div,如我的例子,其中 jqte 文本区域是直接子项),并添加其余的 HTML 和 CSS模仿 jqte 的格式组合框。请注意此处添加的自定义类(.myCustomCombo),因为它是显示/隐藏选项的方法。
最后是 JavaScript 代码,非常简单。第一个只是显示下拉组合框的选项,下一个是在选择选项后执行我们需要的任何操作。请注意它的完成方式,因为由于组合框是动态生成的,因此使用通常的 $(".myCustomCombo").click(...) 将不起作用。如果它已经在页面中(静态定义),则定义此事件的通常方法应该有效;这同样适用于选项。
希望这个例子有用。祝您度过愉快的一天。
关于javascript - JQuery 文本编辑器 - 在工具栏中添加附加下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28457447/
两者有什么区别? v7-21 工具栏中没有的所有功能都包含在工具栏中吗?使用 v7-21 工具栏代替工具栏有哪些限制? 最佳答案 如果您查看 Toolbar 的文档和 AppCompat Toolba
如何使用 jQuery 进行可拖动的 Tinymce 工具栏? 最佳答案 在你的 tinyMCE init 方法中试试这个 tinyMCE.init({ // ... handle_event_cal
是否可以有一个多行的 ExtJsToolBar?我想要第一行的几个控件和第二行的 3 个 ExtJsButtons。 工具栏是面板的顶部工具栏。 最佳答案 不确定早期版本,但从 ExtJS 4.0 开
环境: iOS 6/7、Xcode 5 中的自动布局。 我知道要调整 NavBar 以适应状态栏,我将 NavBar 的背景图像设置为 64 位高(引用:WWDC 2013 Video Lecture
有没有办法获取整个 OS X 中使用的默认 NSButton 来导航窗口的内容?我所说的按钮显示在 Finder、系统偏好设置、Safari、Mac App Store、游戏中心等中。 虽然我可以使用
我没有使用 Windows 上 gvim 中的菜单和工具栏;我可以隐藏它们吗? 这将为文本区域提供更多空间。 最佳答案 使用guioptions设置(缩写为go)。 :set guioptions -
我使用 jQuery 为tinymce 创建了一个外部 float 工具栏。 tinyMCE.init({ ... theme_advanced_toolbar_location :
使用我的 TitleAreaDialog 是否可以在按钮下方的底部添加一个区域或一个栏。当操作发生时,可以向用户显示一条消息。 这是我所指的例子 最佳答案 据我所知,这对于 JFace Dialog
我已经创建了 JToolBar (Java Swing)。我在包含 JToolBar 的框架上设置了背景图像。我希望我的 JToolBar 是透明的,以便保持在框架上的图像应该是可见的。我正在使用 s
如何检查键盘何时完全显示以及何时像这样折叠?也许我可以检查它的高度? 我暂时检查了 notification 中的 userInfo,但没有发现对解决我的问题有用。 最佳答案 只需订阅通知: Noti
我想使用 jQuery UI 创建一个带标题的工具栏。 到目前为止,我有: HTML: go to beginning Submit CSS: #toolbar
这是我的 list 文件: 这是我的 Activity 布局: 这是我
如何去掉 android View 顶部的白框?我在我的代码中看不到我调用创建工具栏的东西的任何地方,我也没有自己编写代码。它也存在于 View 之上,而不是其中。我猜 xml 文件的设计 View
有人知道怎么做吗? 最佳答案 使用带有 alignParentBottom="true"的 LinearLayout 像这样: 我没有尝试编译,您可能需要修正一些拼写错误,但这是一个
我想以编程方式更改 Android 工具栏中导航图标(屏幕截图中的黑色圆圈)的高度和宽度。有什么办法吗?这不是工具栏 Logo 。我无法在 Styles xml 中更新工具栏主题,因为我希望它是动态的
我目前正在开发一个实现 Appcompat 工具栏的应用程序。现在我的问题是,如果我选择一个 Light Actionbar 作为基础,菜单是白色的,标题是黑色的。我希望两者都是白色的。如果我更改为
是否可以在工具栏中同时显示主页图标和返回图标?1)是否可以更改后退按钮图标和主页图标的显示顺序。目前它首先显示箭头按钮,然后显示 Logo (主页按钮) 2) 第二个要求是在单击主页图标时清除 Act
我想要一个双倍高度的操作栏(如 Material 指南示例中所示),但标题中(可能)有 2 行文本。我使用的标题是动态的,取决于页面中显示的项目。如果只有一行,它应该看起来像一个普通的操作栏,如果有
目前正在努力调整我的工具栏的布局。 我有两个按钮。一个左对齐,另一个右对齐。文本(应用程序标题)需要位于两个按钮的中央。 例子:[按钮 1] [文本] [按钮 2] 我的问题。文本未居中对齐。 它需要
我有一个包含 CardView 的 RecyclerView。 我想为每个 CardView 添加一个工具栏,使其看起来和行为都像主工具栏: [图标] [标题] ......... [按钮] [按钮]
我是一名优秀的程序员,十分优秀!