Tag: JavaScript

在浏览器中调整Google地图(V3)的大小(响应)

我在页面中有一个Google地图(V3),页面宽度为100%,中间有一个标记。 当我调整我的浏览器窗口的宽度时,我希望地图保持居中(响应)。 现在地图停留在页面的左侧,变小了。 更新得到它的工作完全按照邓肯描述。 这是最终的代码: var center; function calculateCenter() { center = map.getCenter(); } google.maps.event.addDomListener(map, 'idle', function() { calculateCenter(); }); google.maps.event.addDomListener(window, 'resize', function() { map.setCenter(center); });

hover子元素时触发HTML5 dragleave

我遇到的问题是,当hover该元素的子元素时,会触发元素的dragleave事件。 另外,当再次hover父元素时, dragenter不会被触发。 我做了一个简化小提琴: http : //jsfiddle.net/pimvdb/HU6Mk/1/ 。 HTML: <div id="drag" draggable="true">drag me</div> <hr> <div id="drop"> drop here <p>child</p> parent </div> 使用以下JavaScript: $('#drop').bind({ dragenter: function() { $(this).addClass('red'); }, dragleave: function() { $(this).removeClass('red'); } }); $('#drag').bind({ dragstart: function(e) { e.allowedEffect = "copy"; e.setData("text/plain", "test"); } }); 它应该做的是通过拖动红色的东西通过拖动的东西通知用户。 这是有效的,但是如果你拖到小孩dragleave , dragleave被解雇, div也不会再变红了。 移回放置div也不会使其再次变红。 有必要完全移出放置格,然后再拖回去使其变成红色。 拖入子元素可以防止dragleave被触发吗? 2017更新: TL; […]

转换JavaScriptstring是全部小写?

如何将JavaScriptstring值转换为全部小写字母? 例如:“你的名字”改为“你的名字”

jQuery的 – 可以线程/asynchronous完成?

我目前正在与Django框架使用AJAX 。 我可以通过asynchronous POST / GET到Django ,并让它返回一个json对象。 然后根据从Django传递的结果,我将遍历数据,并更新网页上的表格。 表格的HTML: <!– Modal for Variable Search–> <div class="modal fade" id="variableSearch" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button> <h4 class="modal-title" id="myModalLabel">Variable Name Search</h4> </div> <div class="modal-body"> <table id="variableSearchTable" class="display" cellspacing="0" width="100%"> <thead> <tr> <th> Variable Name </th> </tr> </thead> […]

为什么this.evaluate不正确地返回DOM节点?

我试图通过evaluate()方法从网页中获取对象,所以我可以在evaluate范围之外使用它。 用名称symbolselect的元素是一个带有<options> (=下拉菜单)的<select>标签。 casper.then(function () { var elmnt = this.evaluate(function () { return document.getElementsByName("symbol")[0]; }); console.log(elmnt.options[14].index); }); //Returns TypeError: 'null' is not an object (evaluating 'elmnt.options[14].index') casper.then(function () { var elmnt = this.evaluate(function () { return document.getElementsByName("symbol")[0].options[14].index; }); console.log(elmnt); }); //Returns 14 所以它看起来像通过evaluate()方法返回一个对象返回它不完整,因为这工作正常: casper.then(function () { var elmnt = this.evaluate(function () { return document.getElementsByName("symbol")[0]; }); […]

TypeError:无法读取未定义的属性“setState”

我试图在ajaxcallback从REST api接收数据后setState的组件。 这里是我的组件构造函数的代码 constructor(props) { super(props); this.state = { posts: [] }; this.getPosts = this.getPosts.bind(this); } 然后我有一个componentDidMount方法,看起来像下面。 componentDidMount() { this.getPosts(); } 现在,这里是我正在做Ajax请求的getPosts函数。 getPosts = () => { $.ajax({ type: 'get', url: urlname, success: function(data) { this.setState( { posts: data } ) } }); } 我正在绑定设置状态,但我得到以下错误。 this.setState is not a function 不确定是什么原因造成的。 如果有人指向正确的方向,这将是非常有帮助的。 提前致谢。

对象字面意义上的属性名称周围的方括号是什么意思?

我一直在JS写一段时间,并没有使用这种forms: dist: { files: { [bpr + 'lib/Monster.min.js']: ['<%= concat.dist.dest %>'] } } } 该 []:[] 它的工作,我只是没有使用过或看过它。

Javascript如果声明有多个允许的条件

可能重复: Javascript:将一个值与多个值进行比较的最好方法 Javascript如果语句用于检查文件扩展名无效 在JS中,我试图检查扩展名是以“png”“jpg”还是“gif”结尾。 我知道这可以用一个switch语句来完成,但是我想知道是否有一个简单的方法把它全部放在if条件中。 喜欢: if (aExtensions[i].toLowerCase() == ('jpg' || 'png' || 'gif')) {} 什么是达到这个目的的最好方法?

如何将依赖于jQuery的Javascript小部件embedded到未知的环境中

我正在开发一个依赖于jQuery的JavaScript小部件。 该小部件可能会或可能不会被加载到已经加载了jQuery的页面上。 在这种情况下出现了很多问题… 如果网页没有jQuery,我必须加载我自己的jQuery。 但是,这样做似乎有一个微妙的时间问题。 例如,如果我的小部件在jQuery完成加载和执行之前加载并执行,我得到一个jQuery is not defined错误。 如果网页有jQuery,我通常可以使用它。 如果jQuery的版本是旧的,但是,我想加载我自己的。 如果我加载自己的,但是,我需要这样做,不要跺脚他们的$variables。 如果我设置了jQuery.noConflict()并且它们的任何脚本依赖于$ ,那么我只是打破了他们的页面。 如果网页使用另一个JavaScript库(例如原型),我还需要对原型的$variables敏感。 由于以上所有,不依赖于jQuery似乎更容易。 但是,在我走下这条道路之前,我将首先征求build议。 我的代码的基本框架,包括计时错误和有时$ bug,如下所示: <script type="text/javascript" charset="utf-8"> // <![CDATA if (typeof jQuery === 'undefined') { var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.src = '{{ URL }}/jquery.js'; head.appendChild(script); } // ]]> </script> <script type="text/javascript" src="{{ URL […]

如何使用JavaScript从string中删除空格?

如何删除string中的空格? 例如: input: '/var/www/site/Brand new document.docx' 输出: '/var/www/site/Brandnewdocument.docx' 谢谢