Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。

2
具有动态尺寸图像的马赛克网格图库[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 5年前关闭。 改善这个问题 我刚收到一个项目的以下设计,一个用于图像网格画廊的图片,其中包含动态的宽度和高度图像(用户提交的图像)。(截图在帖子末尾) 我尝试了jQuery Masonry,Tympanus自动图像蒙太奇和CSS-Tricks无反应式响应照片网格,但是每个都有其局限性。 Jquery Masonry允许宽度和高度都是动态的,但是会产生间隙 后两个脚本生成非常漂亮的网格,但是存在宽度或高度必须为静态的问题 编辑:我碰到了同位素,它几乎是完美的,除非有能够完全满足我需求的东西,否则我可能最终会使用它。因此,我的问题仍然保持不变。 是否有任何javascript(最好是jQuery)脚本可以生成完全动态的马赛克(相对于图像大小),如下面的屏幕截图所示? 谢谢你的帮助

11
尝试访问以编程方式创建的<iframe>的文档对象时的“访问被拒绝” JavaScript错误(仅IE)
我有一个项目,需要在其中使用JavaScript创建&lt;iframe&gt;元素并将其附加到DOM。之后,我需要在&lt;iframe&gt;中插入一些内容。这是一个将嵌入第三方网站的小部件。 我不想设置&lt;iframe&gt;的“ src”属性,因为我不想加载页面。相反,它用于隔离/沙盒我插入其中的内容,以免与父页面发生CSS或JavaScript冲突。我正在使用JSONP从服务器加载一些HTML内容并将其插入此&lt;iframe&gt;中。 我的工作正常,但有一个严重的例外-如果在父页面中设置了document.domain属性(可能在部署此小部件的某些环境中),Internet Explorer(可能是所有版本),尝试访问已创建的此&lt;iframe&gt;的文档对象时,在6、7和8中确认)给我一个“访问被拒绝”错误。在我测试过的所有其他浏览器(所有主要的现代浏览器)中都没有发生这种情况。 这很有道理,因为我知道Internet Explorer要求您将将彼此通信的所有窗口/框架的document.domain设置为相同的值。但是,我不知道有什么方法可以在无法访问的文档上设置此值。 有谁知道执行此操作的方法-以某种方式设置此动态创建的&lt;iframe&gt;的document.domain属性吗?还是我不是从正确的角度看待它-是否有另一种方法可以实现我想要的目标而又不会遇到这个问题?无论如何,我确实需要使用&lt;iframe&gt;,因为隔离/沙盒化窗口对于此小部件的功能至关重要。 这是我的测试代码: &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt; &lt;html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"/&gt; &lt;title&gt;Document.domain Test&lt;/title&gt; &lt;script type="text/javascript"&gt; document.domain = 'onespot.com'; // set the page's document.domain &lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;p&gt;This is a paragraph above the &amp;lt;iframe&amp;gt;.&lt;/p&gt; &lt;div id="placeholder"&gt;&lt;/div&gt; …

8
如何知道字体(@ font-face)是否已经加载?
我使用的是Font-Awesome,但未加载字体文件时,图标显示为。 因此,我希望这些图标display:none在未加载文件时具有。 @font-face { font-family: "FontAwesome"; src: url('../font/fontawesome-webfont.eot'); src: url('../font/fontawesome-webfont.eot?#iefix') format('eot'), url('../font/fontawesome-webfont.woff') format('woff'), url('../font/fontawesome-webfont.ttf') format('truetype'), url('../font/fontawesome-webfont.svg#FontAwesome') format('svg'); font-weight: normal; font-style: normal; } 我怎么知道这些文件已经加载,我终于可以显示图标了? 编辑: 我不是在说页面何时被加载(onload),因为字体可以在整个页面之前被加载。

4
了解触摸事件
我正在尝试使我的某些库与触摸设备一起使用,但是很难弄清楚它们如何得到支持以及它们如何工作。 基本上有5个touch事件,但似乎移动浏览器之间仅在touchstart事件(duh)上存在共识。我创建了一个小提琴作为测试用例。 我已经在装有Android 4的Galaxy Note上进行了测试,但是您也可以使用桌面浏览器检查链接。 目的是试图弄清楚如何处理龙头,双击和长龙头。没有什么花哨。 基本上就是这样: 在Android的股票浏览器不火的触摸事件。它只是试图模仿鼠标点击,水龙头,射击mousedown,mouseup和click事件连续,但双水龙头只是在进出塔页面缩放。 当手指触摸屏幕时,Chrome浏览器Android版会触发touchstart事件。如果它的发布很快,它触发那么mousedown,mouseup,touchend最后click事件。 在长按的情况下,大约半秒钟后会发出声音,mousedown并且mouseup,并且touchend在手指松开时click结束。 如果您移动手指,它会触发一个touchmove事件两次,然后触发一个touchcancel事件,此后什么也不会发生,即使touchend抬起手指也不会发生任何事件。 一双击触发器/缩小变焦功能,但事件明智它触发组合touchstart-touchevent两次,没有鼠标事件被解雇。 火狐为Android正确触发该touchstart事件,并在短击火灾的情况下mousedown,mouseup,touchend和click之后。 在的情况下,长按,它触发mousedown,mouseup最后touchend事件。这些方面与Chrome相同。 但是,如果你移动你的手指,如果火灾touchmove汽车无(作为一个可以预期),但它不不火的touchleave事件当手指离开与事件侦听器的元素,并且不火的touchcancel当手指得到浏览器窗口的出事件。 对于双击,它的行为就像Chrome。 Opera Mobile只需短按一下即可完成Chrome和Firefox的功能,但是如果长按,则会激活某种我确实要禁用的共享功能。如果您动手指或双击,它的行为就像Firefox。 Chrome beta版通常会在短按时执行操作,但在长按时不会再触发该mouseup事件,只是touchstart,然后mousedown在半秒钟后,再touchend在手指松开时触发。手指移动后,现在的行为就像Firefox和Opera Mobile。 如果双击,则在放大时不触发触摸事件,而仅在放大时触发。 Chrome测试版显示的是最奇怪的行为,但是我真的不能抱怨,因为它是测试版。 问题是:在最常见的触摸设备浏览器中,是否有一种简单的方法来尝试检测短按,长按和双击? 太糟糕了,我无法在具有Safari或Windows Phone 7 / Phone 8 / RT的IE的iOS设备上对其进行测试,但是如果您可以的话,我们将非常感谢您的反馈。

8
自2012年6月12日起,“ undefined”随机附加在我网站上所请求网址的1%中
自2012年6月12日11:20 TU起,我在清漆/ Apache日志中看到非常奇怪的错误。 有时,当用户请求一页时,几秒钟后,我看到了类似的请求,但URL中最后一个/之后的所有字符串已被“ undefined”替换。 示例:http : //example.com/foo/bar触发http://example.com/foo/undefined请求。 当然,这些“未定义”页面不存在,而是返回我的404页面(这是具有标准布局的自定义页面,而不是经典的apache 404) 任何页面(从首页到最深处)都会发生这种情况 使用各种浏览器(大多数是Chrome 19,也可以是Firefox 3.5到12,即IE 8/9 ...),但仅占流量的1%。 这些请求发送的头是经典头(并且没有ajax头)。 对于给定的ip,这似乎是随机发生的:有时在访问的第一页上,有时在访问期间在随机页面上,有时在访问期间在几页上... 当然,这看起来像是一个JavaScript问题(我使用的是由Google托管的jquery 1.7.2),但是自几天以来,我在js / html或服务器配置中绝对没有任何改变,而且我之前从未见过此类错误。当然,html中没有这样的链接。 我还注意到一些有趣的事实: 从未找到未定义的请求作为其他页面的引用,而是使用“真实”页面作为同一IP的以下请求的引用(用户可以使用404页面上的经典菜单) 我在Google Analytics(分析)中没有看到这些页面的任何痕迹,因此我假设没有执行任何javascript(所有页面(包括404)都存在跟踪器) 即使我在网站的社交网络中提到问题,也没有人联系我们 之后,大多数用户继续访问 所有这些事实使我认为该问题在浏览器中默默发生,可能是由错误的插件,防病毒软件,浏览器栏或昨天更新的浏览器中集成的soft脚的制造商触发的(但我没有发现发布的任何插件)昨天适用于chrome,firefox和IE)。 这里有没有人注意到相同的问题,或者有更完整的解释?


4
JavaScript函数声明和评估顺序
为什么这些示例中的第一个不起作用,而其他所有示例都起作用? // 1 - does not work (function() { setTimeout(someFunction1, 10); var someFunction1 = function() { alert('here1'); }; })(); // 2 (function() { setTimeout(someFunction2, 10); function someFunction2() { alert('here2'); } })(); // 3 (function() { setTimeout(function() { someFunction3(); }, 10); var someFunction3 = function() { alert('here3'); }; })(); // 4 …




7
jQuery html()与innerHTML
我是否可以完全依赖jQuery的html()行为方式与相同innerHTML?innerHTML和jQuery的html()方法之间有什么区别吗?如果这些方法都相同,是否可以使用jQuery的html()方法代替innerHTML? 我的问题是:我正在设计的页面上工作,这些页面包含表格,并且在JavaScript中,该innerHTML属性用于动态填充它们。 该应用程序在Firefox上运行正常,但是Internet Explorer会引发错误:unknown runtime exception。我使用jQuery的html()方法,而IE的错误已消失。但是我不确定它是否适用于所有浏览器,也不确定是否innerHTML用jQuery的html()方法替换所有属性。 非常感谢。

3
pushState和SEO
许多人一直在说,使用pushState而不是hashbang。 我不明白的是,如果不使用hashbang,您将如何对搜索引擎友好? 大概您的pushState内容是由客户端JavaScript代码生成的。 因此,场景是: 我在example.com。我的用户单击一个链接:href="example.com/blog" pushState捕获点击,更新URL,从某处获取JSON文件,并在内容区域中创建博客文章列表。 通过hashbangs,Google知道转到escaped_fragment URL以获得其静态内容。 使用pushState,Google看不到任何东西,因为它无法使用JavaScript代码加载JSON并随后创建模板。 我看到的唯一方法是在服务器端渲染模板,但这完全抵消了将应用程序层推送到客户端的好处。 那么,我是否正确,pushState根本不适合客户端应用程序进行SEO友好?



9
动态创建和提交表单
jQuery中有没有一种方法可以动态创建和提交表单。 像下面这样。 &lt;html&gt; &lt;head&gt; &lt;title&gt; Title Text Goes Here &lt;/title&gt; &lt;script src="http://code.jquery.com/jquery-1.7.js"&gt;&lt;/script&gt; &lt;script&gt; $(document).ready(function(){alert('hi')}); $('&lt;form/&gt;').attr('action','form2.html').submit(); &lt;/script&gt; &lt;/head&gt; &lt;body&gt; Content Area &lt;/body&gt; &lt;/html&gt; 这应该可行吗,或者有其他方法可以做到这一点?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.