Tag: javascript

用jQuery检测滚动条存在仍然很难吗?

我知道检测滚动条的存在应该是我们都应该忍受的难以捉摸的事情之一。 到目前为止我所读到的是你无法真正检测滚动条的存在,只能使用DOM中的提示来知道它们是否存在,并且不能在少于30行的代码中完成。 这对我来说听起来有点不可能,因为我们在2010年.jQuery是否有一个跨浏览器可靠的解决方案来处理这个并且至少在大部分时间都能工作? 请帮忙,我拉我的头发,一半已经在地板上了。

替换元素中字符串的所有ocurrance

我想替换给定元素的所有后代元素(的文本)中的特定字符串。 innerHTML不能用,因为这个序列可以出现在属性中。 我尝试过使用XPath,但看起来界面基本上是只读的。 因为这仅限于一个元素,所以也不能使用document.getElementsByTagName函数。 有没有建议任何方法这样做? 任何jQuery或纯DOM方法都是可以接受的。 编辑: 一些答案表明我试图解决的问题:直接在元素上修改文本将导致所有非Text子节点被删除。 所以问题主要归结为如何有效地选择树中的所有Text节点。 在XPath中,您可以轻松地将其作为//text() ,但当前的XPath接口不允许您更改这些Text节点。 一种方法是通过递归,如Bergi的答案所示。 另一种方法是使用jQuery的find(‘*’)选择器,但这有点贵。 还在等着看是否有更好的解决方案。

history.pushstate使浏览器后退和前进按钮失败

我正在使用jQuery动态加载div容器中的内容。 服务器端代码检测请求是AJAX还是GET。 我希望浏览器后退/前进按钮能够使用代码,所以我尝试使用history.pushState。 我必须遵循一段代码: $(‘.ajax’).on(‘click’, function(e) { e.preventDefault(); $this = $(this); $(‘#ajaxContent’).fadeOut(function() { $(‘.pageLoad’).show(); $(‘#ajaxContent’).html(”); $(‘#ajaxContent’).load($this.attr(‘href’), function() { window.history.pushState(null,””, $this.attr(‘href’)); $(‘.pageLoad’).hide(); $(‘#ajaxContent’).fadeIn(); }); }); }); 一切正常,除非使用浏览器后退/前进按钮浏览时,栏中的地址会根据计划更改,但页面不会更改。 我究竟做错了什么? 在Clayton的回答的帮助下更新了脚本 var fnLoadPage = function(url) { $(‘#ajaxContent’).fadeOut(function() { $(‘.pageLoad’).show(); $(‘#ajaxContent’).html(”).load(url, function() { $(‘.pageLoad’).hide(); $(‘#ajaxContent’).fadeIn(); }); }); }; window.onpopstate = function(e) { fnLoadPage.call(undefined, document.location.href); }; $(document).on(‘click’, ‘.ajax’, function(e) { […]

我可以使用jQuery删除内联事件处理程序吗?

我有一些带有onclick属性的HTML。 我想使用jQuery覆盖该属性。 有没有办法使用jQuery删除单击处理程序? 使用unbind不起作用 。

如何更改日期范围选择器的日期格式?

我正在使用这个bootstrap日期范围选择器。 我想将日期格式日期更改为dd/MMM/yyyy : $(function() { $(“#”).daterangepicker(); });

从jQuery或JS中的json对象中提取数据

我想使用https://raw.github.com/currencybot/open-exchange-rates/master/latest.json提供的货币数据 作为初始测试,我已经创建了一个简化版本作为内联对象: var obj = [ { “disclaimer”: “This data is collected from various providers and provided free of charge for informational purposes only, with no guarantee whatsoever of accuracy, validity, availability, or fitness for any purpose; use at your own risk. Other than that, have fun! More info: http://openexchangerates.org/terms/”, “license”: “Data collected from various […]

使用javascript锁定标签键?

嘿伙计..如何使用javascript锁定或禁用tab键

使用google.maps.geocoder检索lat / long的位置

我一直在尝试使用一些ajax来保存我的应用程序中的场所位置,并在堆栈溢出时偶然发现以下代码 function getLatLong(address) { var geocoder = new google.maps.Geocoder(); var result = “”; geocoder.geocode( { ‘address’: address, ‘region’: ‘uk’ }, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { result[lat] = results[0].geometry.location.Pa; result[lng] = results[0].geometry.location.Qa; } else { result = “Unable to find address: ” + status; } }); return result; } 我的问题是当我调用函数时它什么也没有返回,当我调试并在chrome中设置断点时,它会在返回结果之前先破坏结果[lat] = results [0] […]

Javascript从字符串中提取数字

我有一堆使用jQuery从html中提取的字符串。 它们看起来像这样: var productBeforePrice = “DKK 399,95”; var productCurrentPrice = “DKK 299,95″; 我需要提取数值以计算价格差异。 (所以我≈we var productPriceDiff = DKK 100″; 要不就: var productPriceDiff = 100”; ) 任何人都可以帮我这样做吗? 谢谢,雅各布

Filereader – 再次上传相同的文件不起作用

我有点像绘图应用程序。 用户可以保存项目然后加载它们。 当我第一次加载一个文件(例如project1.leds)在应用程序中进行一些更改但没有保存它然后再次加载相同的文件(project1.leds)没有任何反应。 我不能多次加载同一个文件。 如果我加载其他文件,它的工作。 码: $(“#menu-open-file”).change(function(e){ var data=[]; var file = null; file = e.target.files[0]; console.log(file) var reader = new FileReader(); reader.onload = function(e){ data=JSON.parse(reader.result); x=data[0].SIZE[0]; y=data[0].SIZE[1]; if(x==15) x=16; if(x==30) x=32; if(x==60) x=64; if(y==15) y=16; if(y==30) y=32; if(y==60) y=64; createLeds(x,y,data,false,false); clearActiveTools(); var svg = $(‘#contener’).find(‘svg’)[0]; svg.setAttribute(‘viewBox’,’0 0 ‘ + x*20 + ‘ ‘ + […]