我正在尝试为外语设置键盘.我正在使用jQuery将按键转换成外来字符.我在用:
ALT+ SHIFT+A - Z
我的代码适用于所有这些,除了这4个:
它工作正常,在Firefox,但在Chrome和Safari(我使用的是Mac)我得到这些重音符号- ,ˆ,,¨ -而不是一个应该进入textarea的外来字符.´˜
以下是一些代码:
function type(e, char, textArea) {
e.preventDefault();
var start = textArea[0].selectionStart;
var end = textArea[0].selectionEnd;
var len = textArea.val().length;
var newPos = start + char.length;
textArea.val(textArea.val().substring(0, start) + char + textArea.val().substring(end, len));
textArea[0].setSelectionRange(newPos, newPos);
}
$('textarea').keydown(function(e) {
var …Run Code Online (Sandbox Code Playgroud) MDN对于修改代码中的原型有一个巨大的可怕警告:
根据
[[Prototype]]现代JavaScript引擎如何在每个浏览器和JavaScript引擎中优化属性访问,非常慢的操作,改变对象的性质.对改变继承的性能的影响是微妙和遥远的,并不仅仅局限于在Object.setPrototypeOf(...)语句中花费的时间,而是可以扩展到任何可以访问任何[[Prototype]]已被更改的对象的代码 .如果您关心性能,则应避免设置[[Prototype]]对象.而是[[Prototype]]使用所需的使用创建一个新对象Object.create().
我想知道是否有任何情况你可以修改对象的原型而不会导致级联的优化效果,从而破坏程序的性能.好像应该有.例如,如果您只是在创建对象之后(以及在其他任何东西使用之前)修改原型.但我想这是依赖引擎的.
那么有谁知道是否有有效的方法来修改对象的原型?
编辑:这个问题的动机来自于创建实际继承的对象的愿望Function.我知道如何做到这一点的唯一方法是修改函数的原型.请参阅Raynos答案的最底部:javascript类继承自Function类
javascript inheritance prototype prototypal-inheritance prototype-chain
我想把一个可滚动的盒子放在里面fieldset,但我遇到了一个怪癖,我无法弄清楚它的方式.当您将可滚动条div放在a中时fieldset,fieldset展开而不是使可滚动元素滚动.
这是一个测试用例.以下扩展无限期(boo):
<div style="width: 300px; overflow: hidden;">
<fieldset>
<div style="overflow: scroll; white-space: nowrap;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed lorem arcu, sodales non gravida eget, vehicula vitae nulla. Quisque turpis justo, consectetur ut egestas at, pulvinar nec diam. Donec porttitor lobortis elit quis scelerisque. Proin at mollis nibh. Nulla nisi dolor, rutrum nec rhoncus congue, cursus at urna. Curabitur adipiscing euismod nisl nec consequat. Aliquam justo justo, …Run Code Online (Sandbox Code Playgroud) 我有以下CSS将PDF图标添加到链接到PDF的任何链接:
a.pdf-link:after { padding-left: 2px; content: url(../images/icon-pdf-link.gif);}
Run Code Online (Sandbox Code Playgroud)
是否可以在此图像上添加一些title和alt属性?我希望它能让用户将鼠标悬停在图标上并获得一些文本,例如"这链接到.pdf文件."我通常只是将标题属性添加到其中,但无法弄清楚如果我能通过这种方法做到这一点.
在这个简化的例子中,我有一个书架,书架放在书架上.书架是具有定义宽度的最外层元素.书架上的书应该从左到右显示而不包装.书架应该伸展它的宽度,以展示其架子上的所有书籍.所有书架都需要宽度相同,宽度最宽的书架.
我的HTML:
<div class="bookcase">
<div class="bookshelf">
<div class="book">
<div class="book">
<div class="book">
</div>
<div class="bookshelf">
<div class="book">
<div class="book">
<div class="book">
<div class="book">
</div>
<div class="bookshelf">
<div class="book">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我的CSS:
.bookcase {
width: 40%;
height: 300px;
margin: 0 auto;
background: lightgrey;
overflow-x: auto;
}
.bookshelf {
background: lightgreen;
white-space: nowrap;
}
.book {
display: inline-block;
height: 60px;
width: 60px;
background: pink;
}
Run Code Online (Sandbox Code Playgroud)
当前代码的问题在于,当书架宽度小于最长的书架并且书架使溢出可滚动时,书架元素不会伸展以适合所有书籍.目前,货架似乎将其宽度定义为等于父书柜.
这些图片说明了这个问题.这就是书柜看起来正常的情况,这很好:
要么

但是当书柜缩小时向右滚动时,书架的绿色背景被切断,而不是到达最后一本红皮书的右侧:

如何让书架取出溢出元素的整个宽度,而不是书架父容器的宽度?
我正在使用Yarn来管理我的项目的依赖项.我有开发devDependencies和前端依赖项()所需的开发人员依赖项()dependencies,我的项目将需要并用于运行.我使用Git来管理我的版本控制.
默认情况下,纱线似乎在目录中安装所有依赖项node_modules.这对开发人员依赖很好,但因为我使用的是Git,我通常忽略这个目录.但是,我想提交我的前端依赖项并将它们与开发人员依赖项隔离开来.
我想知道是否可以将Yarn配置为在开发人员依赖项的单独目录中安装所需的依赖项.例如:
devDependencies 将安装在 /node_modulesdependencies 将安装在 /vendorBower在.bowerrc文件中有类似的功能,但我找不到任何类似的Yarn.我考虑过将Bower和Yarn一起用于我的前端依赖,但这似乎打败了使用Yarn的目的.
我已将子目录移动到单独的存储库中,然后将其作为子模块包含在内.
现在我想在该变化之上重新定义另一个分支.
israfel:proj almad$ git rebase -i origin/master
error: could not apply ae1fd9a... Commit message
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' and run 'git rebase --continue'
Could not apply ae1fd9a... Commit message
israfel:proj almad$ git status
# Not currently on any branch.
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add/rm <file>..." …Run Code Online (Sandbox Code Playgroud) 我有一个奇怪的问题:当使用Firebug Lite for Chrome时,有时悬停不起作用.
我得到了什么:div像这样:
<div class="editWindow">
<ul>
<li id="edCha" onclick="channels.add()">
????????????? ?????
</li>
<li id="delCha" onclick="channels.chanLink()">
?????????? ???????
</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
这个CSS:
.editWindow li:hover, .chooseAction li:hover {
background: #369;
color: white;
cursor: pointer;
}
Run Code Online (Sandbox Code Playgroud)
当我第一次打开页面然后激活Firebug时,它看起来都像这样:

但是,如果我首先激活Firebug然后打开此页面,则悬停只是不起作用.我在Firebug控制台中看不到任何错误,并且没有像这样的悬停效果(鼠标指针在那里,相信我):

我只在Chrome(Firefox运行良好)中遇到过这个问题,无论是在Win7还是在Linux(Mint 14)上.
原因是什么?我糊涂了.
当使用Force element state -> :hover的开发工具菜单,悬停风格的作品.
我添加onmouseover="alert('test');"了其中一个li元素.在第二种情况下,alert甚至没有被召唤!
我有一个日历,当我点击一个时<td>,会出现一个弹出窗口,这样你就可以为你选择的日期创建你的evenement.我想添加一个功能.
当用户完成创建事件时,我想向父页面发送JavaScript请求,以便我可以使用AJAX刷新日历.基本上,我想调用子函数,但函数在父页面上.
在Google上,我只发现了一个可以刷新父窗口的脚本 - 没有关于"父回调"的内容.☹甚至可能吗?
PS答案可以是纯JS或jQuery,没关系.我会继续看着.
我目前有一个已经很大的控制器.我想知道减少控制器的最佳方法是什么.我不一定会寻找最简单的方法,而是一种安全有效的方式.我一直在使用Rails现在发展了一段时间,但我仍然不熟悉如何"子类"的作品,我甚至不能确定它是否应该以这种方式来使用.我想也许是这样的?
class SomeController < ApplicationController
end
class MoreFunctionsController < SomeController
end
Run Code Online (Sandbox Code Playgroud)
这是目前未经检验的 - 我仍然工作就可以了,现在 - 但我希望这会那种给你的什么方向,我试图去的想法.我也不确定这样做的路由是什么.什么是"拆分"大型控制器的最佳方法?
css ×4
javascript ×3
git ×2
jquery ×2
overflow ×2
alt ×1
bower ×1
css3 ×1
fieldset ×1
firebug ×1
firebug-lite ×1
git-rebase ×1
hover ×1
html ×1
inheritance ×1
macos ×1
npm ×1
popupwindow ×1
prototype ×1
title ×1
yarnpkg ×1