小编Osc*_*son的帖子

浏览器支持拖放文件上传

我似乎无法在任何地方找到它,只是演示或链接到规范,或谷歌Gears实施.这一切都很棒,但我很好奇它在主浏览器和操作系统上的实际浏览器支持是什么.Firefox,Chrome,Safari,Opera,IE还有其他选择吗?IE9怎么样?

javascript ajax html5 drag-and-drop file-upload

14
推荐指数
2
解决办法
2万
查看次数

检测浏览器窗口是否随JavaScript移动?

这是一个演示...我只是好奇,你能检测窗口是否被移动?就像你在显示器周围移动Firefox/Chrome/IE一样?我怀疑它,但我想看,因为你可以检查调整大小和焦点/模糊的窗口.

javascript browser windows dom-events

13
推荐指数
3
解决办法
9754
查看次数

做弯曲阴影的最佳方法

对于这样的事情:

框

最有效的方法是什么?最好做一个图像,或者有没有办法用CSS实现这一点而没有一堆我不知道的黑客/额外标记?

此外阴影只具有在IE9,FF和Chrome工作

html css css3 slice

13
推荐指数
2
解决办法
1602
查看次数

使用JavaScript设置charset元标记

我试图在这里找到一个错误:https://github.com/OscarGodson/EpicEditor/issues/184#issuecomment-8805982

基于所有信息,它似乎是因为浏览器默认为用户的本机字符集(在这种情况下ISO-8859-1),而不是UTF-8像我的机器和美国的其他人.我猜测修复是使用HTML来强制编码UTF-8:

 <meta charset='utf-8'> 
Run Code Online (Sandbox Code Playgroud)

要么

<meta http-equiv='Content-Type' content='Type=text/html; charset=utf-8'>
Run Code Online (Sandbox Code Playgroud)

但是,JS不起作用.在第一个例子中:

charsetMetaTag = self.editorIframeDocument.createElement('meta');
charsetMetaTag.charset = 'utf-8';
self.editorIframeDocument.getElementsByTagName('head')[0].appendChild(charsetMetaTag);
Run Code Online (Sandbox Code Playgroud)

我刚刚回到注入DOM的以下内容:

<meta>
Run Code Online (Sandbox Code Playgroud)

在第二个例子http-equiv中没有设置:

charsetMetaTag = self.editorIframeDocument.createElement('meta');
charsetMetaTag['http-equiv'] = 'Content-Type';
charsetMetaTag['content'] = 'text/html; charset=utf-8';
self.editorIframeDocument.getElementsByTagName('head')[0].appendChild(charsetMetaTag);
Run Code Online (Sandbox Code Playgroud)

我得到以下HTML:

<meta content="text/html; charset=utf-8">
Run Code Online (Sandbox Code Playgroud)

是的,我需要动态地动态创建iframe.这可能不是问题,但这就是它的样子.我能想到的唯一"黑客"是以某种方式使用innerHTML ......

html javascript utf-8 character-encoding epiceditor

13
推荐指数
1
解决办法
1万
查看次数

将每个新行的开头与JavaScript正则表达式匹配

我有一个可能的字符串\n.考虑到:

&nbsp;Foo1
&nbsp; Foo2
Foo3&nbsp; Foo4.
Run Code Online (Sandbox Code Playgroud)

我想&nbsp;在每行的开头替换's,但上面是一个字符串.^nbsp;只匹配&nbsp;之前的第一个Foo1.我想在任何换行的开头做,寻找&nbsp;.有任何想法吗?

所以,我想要一个与前两个匹配的正则表达式&nbsp;,但不是第三个.

javascript regex

13
推荐指数
1
解决办法
7697
查看次数

将子iframe中的事件附加到父窗口中的处理程序

我没有直接访问这个iframe的源代码,所以我想这样做,如果可能的话.

我有一个由JS生成的iframe:

<iframe name="temp_iframe" width="100%" height="95%" src="'+the_url+'"></iframe>
Run Code Online (Sandbox Code Playgroud)

里面是提交按钮和取消按钮.提交按钮工作正常,但我希望取消按钮关闭包含iframe的此模式...我还希望提交按钮发送,然后关闭模式.通常这很容易,但我不知道如何在父窗口中将事件设置为iframe的子DOM元素,该元素会影响子窗口的父窗口(主窗口).

例如,如果这不是在iframe和jQuery中:

$('[name=temp_iframe] button').live('click',function(){
    alert('click');
    return false;
});
Run Code Online (Sandbox Code Playgroud)

编辑:而且,它在同一个域名!

html javascript iframe jquery events

12
推荐指数
1
解决办法
2万
查看次数

具有多个表达式的JavaScript中的三元运算符?

the_styles ? the_styles.appendTo('head'); the_styles=null : the_styles = $('.stylesheet').detach();
Run Code Online (Sandbox Code Playgroud)

显然,这是无效的.注意";" appendTo()和之间the_styles=null.我如何在1行上写它仍然有这样的多个表达式?

javascript jquery conditional ternary-operator

11
推荐指数
2
解决办法
1万
查看次数

jQuery插件返回"无法读取未定义的属性"

我正在尝试做很多次我做过的事情.我无法弄清楚为什么这不起作用.无论我如何编写jQuery代码,它都不起作用.menuitems[i].action()只是不工作.下面是示例1,其中这个例子,无论点击什么项目,它都会返回最后一项的动作(在这个例子中它是alert('Forward!')).第二个返回undefined属性.完整的错误如下.

我的jQuery插件就是这样调用的(以下示例是同一个调用发生的事情):

$('p').contextMenu([
    {
        name:'Back',
        action:function(){
            alert('Back!');
        },
        icon:'http://cdn.iconfinder.net/data/icons/crystalproject/16x16/actions/agt_back.png'
    },
    {
        name:'Forward',
        action:function(){
            alert('Forward!');
        },
        icon:'http://cdn.iconfinder.net/data/icons/crystalproject/16x16/actions/agt_forward.png'
    }
]);
Run Code Online (Sandbox Code Playgroud)

例1:

for (i in menuitems){
    $('<li/>',{
        'html':'<img src="'+menuitems[i].icon+'">'+menuitems[i].name,
        'class':o.itemClass,
        'click':function(){
            menuitems[i].action();
        }
    }).appendTo('.'+o.listClass);
}
Run Code Online (Sandbox Code Playgroud)

这将返回一个带有Forward的警报!无论点击哪一项,后退或前进.

例2:

var len = menuitems.length;
for (var i = 0; i < len; i++){
    $('<li/>',{
        'html':'<img src="'+menuitems[i].icon+'">'+menuitems[i].name,
        'click':function(){
            menuitems[i].action();
        },
        'class':o.itemClass
    }).appendTo('.'+o.listClass);
}
Run Code Online (Sandbox Code Playgroud)

我明白了:

未捕获的TypeError:无法读取未定义的属性"action"

我试过的其他随机的东西是分离点击并将其重新连接到该appendTo()块之外,更改action()newtest()确保它与任何内置关键字没有冲突.我也试过做了$('body').append('<li>{blah blah}</li>').find('li').click(function(){/*blah blah*/});但是它仍然返回了同样的东西.我想法了!

javascript jquery plugins undefined

11
推荐指数
1
解决办法
11万
查看次数

iPhone HTML5 App滚动问题

我不知道这是否可能,或谷歌找到它,但你可以添加:

<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
Run Code Online (Sandbox Code Playgroud)

它会使它不能左右滚动,只能上下滚动.是否有一种方法可以做到这一点,当你到达终点时它不会做那种过度滚动效果但是继续滚动然后它会弹回来?像Cocoa应用程序一样,我注意到"过度滚动"有时它们具有相同的背景颜色,因此它看起来不像Safari,或者它根本不执行它?

javascript iphone mobile web-applications ios4

10
推荐指数
2
解决办法
2万
查看次数

不关闭HTML中的标签和属性的实际问题是什么

最近,一位朋友决定不在HTML中关闭他的标签或属性,因为它不是必需的,他将节省一些带宽和下载时间.我告诉他这是一个坏主意,并且"比对不起更安全",但是,我真的只能在这个问题上找到2个资源:

  1. http://css-tricks.com/13286-problems-with-unquoted-attributes/
  2. http://www.cs.tut.fi/~jkorpela/qattr.html

#1很好,但就像他说的那样,它们并不是真正的世界范例,这就是为什么我选择#2,但它们只是真正展示了<a>与大多数其他标签/节点不同的东西.

是否有其他资源或测试用例可以更好地引用属性并关闭标记?

html browser html5 cross-browser

10
推荐指数
2
解决办法
8985
查看次数