有没有办法用jQuery手动触发委托的事件处理程序?
请参考以下示例代码:
<div class="container">
<input type="button" value="Hello">
<span class="output"></span>
</div>
?
<script>
$('.container')
.on('click', '[type=button]', function(e) {
$(e.delegateTarget).find('.output').text($(this).val());
})
.find('[type=button]').triggerHandler('click');?
</script>
Run Code Online (Sandbox Code Playgroud)
(在线:http://jsfiddle.net/TcHBE/)
我希望这可行,并且文本"Hello"将出现在跨度中而不实际单击按钮,但事实并非如此.
我e.delegateTarget在处理程序内部使用,因为该.ouput元素不会与按钮处于已知关系,除了该处理器中的某个位置.container.这就是我首先使用委托事件处理程序的原因.
更新:
我也在使用triggerHandler,因为事件在我不想触发的实际代码中有默认行为.(在实际代码事件是自定义事件hide中的引导模态插件,但我其实不愿意触发页面加载事件处理函数时隐藏模式).
我可以将处理程序提取到一个命名函数中并直接调用它,但是由于使用它e.delegateTarget,这会使构造更复杂.
我正在寻找一个可以用来注释源代码的工具.
我有一些我需要了解的第三方源代码(JavaScript),我不想更改它(添加内联注释)以便
通常情况下,我会在上面写一个涂鸦的全部内容,但代码太长了,我需要按电子邮件分享.如果能够做到这一点,我会很高兴,包括能够在代码中的这些位置之间创建"链接",甚至可能在视觉上用线条或箭头.
任何人都可以告诉我eclipse中"Open Type"(Ctrl + Shift + T)和"Open Resource"(Ctrl + Shift + R)的区别.
我试图理解在功能上使用Scala编写策略游戏,但不幸的是我似乎陷入了基础.(这不是家庭作业,而是我尝试学习新东西,即"纯粹的"功能编程.)
让我们采取以下简单的"游戏":(唯一)玩家在无穷无尽的方块上有x个相同的棋子.棋子从方块0开始,每转一圈,他可以向前移动一个方格.
作为我将使用的数据结构List[Int],每个项目是一件的位置(正方形).
为了产生可能的动作,我提出了:
def moves(start: List[Int]) =
(0 until start.length).map({i => start.updated(i, start(i) + 1)});
val m1 = moves(List(0,0,0))
// m1 then contains Vector(List(1, 0, 0), List(0, 1, 0), List(0, 0, 1))
val m2 = moves(List(1,2,3))
// m1 then contains Vector(List(2, 2, 3), List(1, 3, 3), List(1, 2, 4))
Run Code Online (Sandbox Code Playgroud)
我不喜欢的是使用索引循环(0 until start.length).它对我来说似乎不太"功能".这是正确的方法吗?还是有更好的方法?
现在在我的游戏示例中,所有棋子都是相同的,所以如果m1所有三个可能的动作也是相同的,并且可以/应该被压缩成一个动作.我修改moves了对每个移动项目进行排序,以便我可以获得不同项目的列表:
def moves(start: List[Int]) =
(0 until start.length).map({i => start.updated(i, start(i) + 1).sorted}).distinct;
val m1 = moves(List(0,0,0)) …Run Code Online (Sandbox Code Playgroud) 我解析URL的问题比没有路径但查询中有斜杠有问题.例如:http://example.com?q=a/b
我知道这样的URL很可能是无效的(*) - 它至少需要一个斜杠作为这样的路径:http://example.com/?q=a/b.
我尝试过这种URL的所有浏览器都会自动更正URL.这基本上就是我想要重现的:识别并纠正这样的URL.
parse_url然而使用产生:
var_dump( parse_url('http://example.com?q=a/b') );
array(3) {
["scheme"]=>
string(4) "http"
["host"]=>
string(15) "example.com?q=a"
["path"]=>
string(2) "/b"
}
Run Code Online (Sandbox Code Playgroud)
虽然在查询中没有斜杠的URL可以正常工作:
var_dump( parse_url('http://example.com?q=ab') );
array(3) {
["scheme"]=>
string(4) "http"
["host"]=>
string(11) "example.com"
["query"]=>
string(4) "q=ab"
}
Run Code Online (Sandbox Code Playgroud)
我尝试过的所有外部库(Jwage\Purl,League\Url,Saber\Uri)基本上都做同样的事情,这让我感到惊讶.
为什么(所有?)浏览器"正确",而(所有?)PHP库让它"错误"?
除了在解析URL之前尝试使用正则表达式捕获这些情况(这可能是不可靠的 - 这就是我想首先使用库的原因),我还有哪些替代方案?
(*)我咨询了三个来源:RFC 1738,RFC 3986,WHATWG URL Standard,他们三人都不同意什么是有效的.
我对下面这句话的写作有疑问
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"/>
在这里我没有提到第二个声明中的类型.但仍然得到jquery或$ symbol.Cud任何解释我吗?
我在这里使用VS 2010.
我原来有一个提交按钮.
<input class="submit" type="submit" class="input" value="Add" name="command" />
Run Code Online (Sandbox Code Playgroud)
但现在我想用一个<a href>代替.问题是,这value="Add"非常重要.
我现在正在<a href>这样做.
<a href="javascript:document.register.submit();">submit</a>
Run Code Online (Sandbox Code Playgroud)
有什么建议?问题是,网站没有发现这个特定的<a href>点击,因此不会运行我的PHP代码.
$("#element").get(0).value = v;
Run Code Online (Sandbox Code Playgroud) 我在我的应用程序中使用jquery.我需要在<p></p>每次单击文本时更改标记中包含的文本的字体颜色.谢谢
从来没有尝试过这样做的问题.
我试图将整个页面居中.
一些代码:
body{
margin:0;
padding:0;
color:#333333;
font-family: "lucida grande",tahoma,verdana,arial,sans-serif;
font-size:0.85em;
}
#container{
width:960px;
float:left;
margin:0 auto;
}
Run Code Online (Sandbox Code Playgroud)
那有什么不对吗?任何人都有任何一般性问题吗?
我的代码有问题,这是一个简单的骰子游戏:
import java.util.Random;
class Zaruri {
public static void main(String args[]) {
Random roll = new Random();
int[] zar = new int[2];
for (int i = 0; i < 1; i++) {
for(int k = 0; k < 2; k++){
zar[i] = (int) (roll* 6) + 1;
}
if (zar[0] == zar[1]) {
System.out.println("Your numbers are : " + zar[0] + " and " + zar[1] + "\nYou won! \nYEEEY!!");
} else {
System.out.println("Your numbers are : " + zar[0] …Run Code Online (Sandbox Code Playgroud)