Tag: javascript

在制作富文本/所见即所得的编辑器时,可信的div与iframe

我正在尝试权衡使用 与制作我自己的富文本/ wysiwyg编辑器的优缺点。 这样做,为什么我不能只使用一个满足的 ,为什么这么多人喜欢 ? 背景讨论:根据我的理解,制作一个所见即所得编辑器的一种常用方法是使div或iframe 满足 ,然后对包含div或iframe主体的文档执行execCommand以使其文本变为粗体或其他。 这是HTML: Bold VS: Bold 和JS: $(document.body).on(‘click’, ‘.btn-bold’, function(){ document.execCommand(‘bold’, false, null); }); VS: $(document.body).on(‘click’, ‘.btn-bold’, function(){ window.frames[0].document.body.execCommand(‘bold’, false, null); }); 看起来大多数制作精良的富文本编辑器都使用iframe。 虽然我可以很容易地在Webkit浏览器中使用这个contenteditable / execCommand组合来处理div / iframe,但是我有一个地狱般的时间试图让iframe在Firefox中运行。 我不得不求助于将脚本和样式表加载到iframe和各种废话中来复制我可以通过基于div的版本轻松完成的任务。 所以基于 的方法似乎更可取。 我重新考虑任何有力的理由?

是否有xhr.overrideMimeType()函数的跨浏览器替代?

我无法访问服务器,我需要使用ISO-8859-1 charset进行整个AJAX事务。 我正在使用jQuery.load()函数和以下jQuery方法: jQuery.ajaxSetup({‘beforeSend’ : function(xhr) {xhr.overrideMimeType(‘charset=ISO-8859-15’); }}); 即使firefox和chrome正在返回正确编码的结果,IE(所有版本)都没有。 有没有办法只在客户端修复它? ps所有内容都在ISO-8859-1中正确编码。

排序不使用Json Result给出编码输出

我正在使用Json Result来显示一个表,当我显示结果时它工作正常。 现在我想为它添加一个排序function,所以我使用了canSort:true属性。 但是现在当我点击表格的标题以进行排序时,我在浏览器中得到了下面编码的字符串,它似乎也被排序了,但是对它进行了某种编码,如下所示。 {“Data”:”\u003ctable class=\”paramCustomDataTable\”\u003e\u003cthead\u003e\u003ctr class=\”customHead\”\u003e\u003cth scope=\”col\”\u003e\u003ca href=\”/Parameters/CustomData?id=7&sort=Name&sortdir=ASC\”\u003eName\u003c/a\u003e\u003c/th\u003e\u003cth scope=\”col\”\u003e\u003ca href=\”/Parameters/CustomData?id=7&sort=Value&sortdir=DESC\”\u003eDataValue\u003c/a\u003e\u003c/th\u003e\u003cth scope=\”col\”\u003eDelete\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003eNewdata\u003c/td\u003e\u003ctd\u003e123456\u003c/td\u003e\u003ctd\u003e\u003ca href=\u0027delete/5\u0027\u003eDelete\u003c/a\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e”} 我知道下面的代码可能存在一些不一致之处,因为我必须删除版权问题的实际列。 C# code [CacheControl(HttpCacheability.NoCache), AcceptVerbs(HttpVerbs.Get)] public JsonResult GetMyData(int id) { var result = _myRepository.GetmyDataWithId(id).ToList(); var grid = new WebGrid(result, rowsPerPage: 5, canSort:true); var htmlString = grid.GetHtml( columns: grid.Columns( grid.Column(“Name”, “Name”), grid.Column(“Value”, “DataValue”), )); return Json(new { Data = htmlString.ToHtmlString() } , JsonRequestBehavior.AllowGet); […]

“jQuery.event.special”API(针对自定义事件)的文档在哪里?

我正在创建一个textchange jQuery插件的fork,它使用jQuery.event.special API创建自己的自定义事件( textchange , hastext和notext )。 我疯了,试图找到$.event.special API的文档 ! 我搜索了jQuery的网站,发现没有提到specialfunction。 我发现有几个博客谈论API,甚至引用了它的链接 ,但该页面根本没有谈论它。 有人可以指点我这个“特殊”API的一些文档吗? 我主要对jQuery的文档感兴趣,因为我想知道这个API的“官方”来源。 更新: 我查看了jQuery的源代码,他们使用$.event.special API来处理某些事件(包括ready和hover ),所以它显然不像我之前想象的那样过时。

Backbone.js View无法正确取消绑定事件

我有一些Backbone.js代码将click事件绑定到一个按钮,我想点击后取消绑定,代码示例如下: var AppView = Backbone.View.extend({ el:$(“#app-view”), initialize:function(){ _.bindAll(this,”cancel”); }, events:{ “click .button”:”cancel” }, cancel:function(){ console.log(“do something…”); this.$(“.button”).unbind(“click”); } }); var view = new AppView(); 然而unbind不起作用,我尝试了几种不同的方式,并在jQuery初始化函数中结束事件,但在Backbone.events模型中没有。 有谁知道为什么unbind不工作?

Google API多种标记,具有不同的颜色,具体取决于类

所以我在下面的代码标记是由使用邮政编码和城市的CMS系统创建的。 一切正常,但我想要做的是改变每个引脚的颜色,这取决于我有3类红色,绿色和蓝色这个标记应该根据CMS系统中选择的类来改变。 实现这一目标的最佳方式是什么? $(document).ready(function () { var map; var elevator; var myOptions = { zoom: 3, center: new google.maps.LatLng(50, -30), mapTypeId: ‘terrain’ }; map = new google.maps.Map($(‘#map_canvas’)[0], myOptions); var styles = [{“featureType”:”water”,”stylers”:[{“color”:”#46bcec”},{“visibility”:”on”}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f2f2f2″}]},{“featureType”:”road”,”stylers”:[{“saturation”:-100},{“lightness”:45}]},{“featureType”:”road.highway”,”stylers”:[{“visibility”:”simplified”}]},{“featureType”:”road.arterial”,”elementType”:”labels.icon”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”administrative”,”elementType”:”labels.text.fill”,”stylers”:[{“color”:”#444444″}]},{“featureType”:”transit”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”poi”,”stylers”:[{“visibility”:”off”}]}]; map.setOptions({styles: styles}); var iterator = 0; var addresses = [ [‘New York’, ‘ 10007’], [‘Mexico’, ‘ 10100’], [‘Spain’, ‘ 04830’], ]; for (var […]

什么是目前最好的WYSIWYG编辑器? (jQuery支持/集成是一个加号。)

我正在开发一个需要WYSIWYG编辑器的项目,但我不需要偶尔集成一个,所以我不熟悉最新和最好的。 我过去曾经使用过tinyMCE和nicEdit,因为它的开销很大,所以我不想在这个项目中使用tinyMCE。 我不需要它过于复杂,但我需要能够在每个实现的基础上更改可用按钮,并且与jQuery和AJAX的良好兼容性是一个巨大的优势。 显然,良好的干净HTML支持是必要的。 你最近找到了所见即所得的编辑? 你会推荐什么? PS我知道这有点像这个问题的副本,但这个问题已经有近一年的历史了,事情变化很快。

优雅干净的方式在JavaScript文件中包含HTML?

我正在构建一个带有几个模态对话窗口的小应用程序。 窗口需要一点点HTML。 我已经在javascript库中对窗口HTML进行了硬编码,但对此解决方案并不满意。 有没有更优雅的方式来做到这一点? 似乎JavaScript没有多行字符串/ heredoc语法。 var html = “Email Share”; html = html + “”; html = html + “To”; html = html + “From”; html = html + “Subject”; html = html + “Body”; html = html + “”; html = html + “”; $(“#data”).html(html); 添加以澄清原始消息 – 任何解决方案都不能使用Ajax / XHR来提取模板文件,因为javascript库将位于不同的域中,它所包含的html文件有点像ShareThis。 该库将包含在许多不同的站点上,并附加到div中任何锚标记的onClick事件,其属性为sharetool =“true”。 例如: […]

在jQuery中绑定现有的JavaScript函数

使用jQuery我想将现有函数绑定到按钮。 我已经浏览了文档并找到了bind方法,但是jQuery上的示例绑定了新创建的函数,因为我想绑定一个已经硬编码的函数,例如: function fHardCodedFunction(){ //Do stuff } function fBindFunctionToElement(){ $(“#MyButton”).bind(“click”, fHardCodedFunction()); } 这可能吗? 或者我是以错误的方式来做这件事的?

在Chrome Dev Tools控制台中记录jQuery对象时显示元素?

最近Chrome Dev Tools似乎发生了一些变化。 使用console.log记录jQuery对象,用于在console.log中显示DOM节点的Element。 像这样的东西: [Employees] 现在它已更改为可点击的对象,如下所示: [, context: ] 有没有办法回到旧式对象日志记录甚至是不同的方法来调用console ? 我目前正在使用版本23.0.1271.64 。 不确定哪个版本带来了变化。