Tag: javascript

如何在单个页面上拥有多个jQuery插件实例?

我正在编写一个简单的jQuery插件,但是我无法在页面上使用多个实例。 例如,这是一个示例插件来说明我的观点: (function($) { $.fn.samplePlugin = function(options) { if (typeof foo != ‘undefined’) { alert(‘Already defined!’); } else { var foo = ‘bar’; } }; })(jQuery); 如果我这样做: $(document).ready(function(){ $(‘#myDiv’).samplePlugin({}); // does nothing $(‘#myDiv2’).samplePlugion({}); // alerts “Already defined!” }); 这显然是一个过于简化的例子来说明问题。 所以我的问题是,我如何有两个单独的插件实例? 我希望能够在同一页面上的多个实例中使用它。 我猜测问题的一部分可能是在全局范围内定义变量。 那么如何定义它们对插件实例的唯一性呢? 谢谢你的指导!

如何在ajax调用后停止刷新页面?

ajax调用后我无法停止刷新页面。 我试过把e.preventDefault(); 并返回false; 以及我的页面再次令人耳目一新。 我不知道代码或其他什么问题。 请在ajax调用后帮我停止刷新页面。 解决这个问题对我来说将是一个很大的帮助。 提前致谢。 这是我的代码: $(document).ready(function() { $(‘#loginForm’).on(‘click’, function(e) { e.preventDefault(); var formData = { ‘uname’ : $(‘#uname’).val(), ‘pwd’ : $(‘#pwd’).val() }; $.ajax({ type : “POST”, url : “getresults.php”, data : formData }).done(function(data) { alert(data+”This is working”); }).fail(function(data) { alert(“This is not working”); }); }); });

将值插入到光标所在的TEXTAREA中

我有一个textarea和一个带有值的div。 当我点击一个值时,我将其插入textarea。 我需要将它插入我的光标在textarea中的位置。 为什么我说WAS? 因为当我将其移出并单击要插入的值时,我认为它在文本区域中失去焦点。 所以,我的问题是,有没有办法“记住”textarea中的最新光标位置,然后在该位置插入我的值? 也许它可能是字符串中的字符编号?..目前我添加如下: input.val( function( i, val ) { return val + ” ” + myInsert + ” “; } ); 我也使用jQuery,也许我可以使用它?

jQuery UI:从原始div拖动并克隆,但保留克隆

我有一个div,它应用了jQuery UI Draggable。 我想要做的是点击并拖动它,并创建一个保存在dom中的克隆,并在删除时不删除。 想想一副牌,我的盒子元素就是牌组,我想从牌组中拉出牌/ div并将它们放在我的页面周围,但它们将是原始div的克隆。 我只是想确保你不能创建一个克隆div的另一个克隆。 我使用了以下,但没有像我想的那样工作: $(“.box”).draggable({ axis: ‘y’, containment: ‘html’, start: function(event, ui) { $(this).clone().appendTo(‘body’); } }); 我想出了我的解决方案: $(“.box-clone”).live(‘mouseover’, function() { $(this).draggable({ axis: ‘y’, containment: ‘html’ }); }); $(“.box”).draggable({ axis: ‘y’, containment: ‘html’, helper: ‘clone’ stop: function(event, ui) { $(ui.helper).clone(true).removeClass(‘box ui-draggable ui-draggable-dragging’).addClass(‘box-clone’).appendTo(‘body’); } });

URLvalidationREGEX – URL仅对http://有效

这个怎么运作 我有一个输入字段来输入网站的URL,我想检查它,如果URL正常,我将给输入字段一个类(“validated_ok”)并删除一个类(“cf_required”),如果它错了,另一个四处走动。 问题 如果用http://写的,url应该是正确的,但实际上只有www ( www.google.ch )。 我怎么改变正则表达式? 使用Javascript // CHECK WEBSITE $(“.cf_required[name=’website’]”).focusout(function() { var myVariable = $(this).val(); if(/^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/|www\.)[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[az]{2,5}(:[0-9]{1,5})?(\/.*)?$/.test(myVariable)){ $(this).addClass(“validated_ok”).removeClass(“cf_required”) } else { $(this).removeClass(“validated_ok”).addClass(“cf_required”); } });

$ viewContentLoaded未触发

$viewContentLoaded永远不会在我的Angular控制器中触发。 下列: function MyController($scope) { $scope.$on(‘$viewContentLoaded’, function() { alert(“blah”); }); } 永远不会遇到断点,也不会弹出警报。 我认为这是非常标准的用途,所以我不确定它可能是什么,但它肯定不会解雇。 控制器中的其他所有内容都表现正常。 什么会导致这个?

JQuery和JqGrid从行检索数据

如果我只有行的编号,我如何从jqgrid行检索数据? 例如,如果我想要第3行的id列,我该怎么办?

如何将加载到iframe中?

我有逻辑工作从父母追加到我的iframe 这工作: $(‘#iframe’).load(function() { $(this).contents().find(‘#target’).append(‘this text has been inserted into the iframe by jquery’); }); 这不 $(‘#iframe’).load(function() { $(this).contents().find(‘body’).append(”); }); 。如果 问题与插入的脚本标记没有正确转义有关。 一半的javascript在html中变得可见,就像第一个脚本标签突然结束一样。

点击Flash对象通过JavaScript

是否可以通过JavaScript触发Flash对象上的click事件?

滚动时停止触摸开始执行太快

我正在试图弄清楚如何解决滚动时分配给元素的tapped类,但它生效太快了,我需要在实际触摸时稍微延迟它而不是在滚动时触摸,这是我的代码这个怎么运作: $(‘div, a, span’).filter(‘[tappable][data-tappable-role]’).bind(‘touchstart’, function() { var self = $(this); self.addClass(self.data(‘tappable-role’)); }).bind(‘touchend’, function() { var self = $(this); self.removeClass(self.data(‘tappable-role’)); }).bind(‘click’, function() { var self = $(this), goTo = self.data(‘goto’); if(typeof goTo !== ‘undefined’) { window.location = goTo; } }); 当滚动时,它会在我几乎没有碰到它时将类分配给元素,我想防止这种情况发生,除非它被正确触摸(没有点击)。 虽然我尝试使用setTimeout进行试验,但由于它延迟但效果不佳,但它仍会在以后分配该类。 这就是我用setTimeout做的方法: var currentTapped; $(‘div, a, span’).filter(‘[tappable][data-tappable-role]’).bind(‘touchstart’, function() { clearTimeout(currentTapped); var self = $(this); var […]