提问人:bp13 提问时间:6/1/2023 最后编辑:Barmarbp13 更新时间:6/1/2023 访问量:28
将初始状态 (onCreate) 以及捕获单击事件时传递到 Jquery 函数的方法
Method to pass into Jquery function for initial state (onCreate) but also when a click event is captured
问:
我很难弄清楚如何正确触发与浏览器事件相关的此功能。目前,如果我使用,例如(我的函数名称是initRanker)
<row label="r1"><span class="blueRow">Blue</span></row>
<row label="r2"><span class="redRow">Red</span></row>
<row label="r3"><span class="GreenRow">Green</span></row>
<col label="c5" open="1" openSize="25" randomize="0"><span class="blueCol">Blue OTHER</span></col>
<col label="c6" open="1" openSize="25" randomize="0"><span class="redCol">Red OTHER</span></col>
<col label="c7" open="1" openSize="25" randomize="0"><span class="greenCol">Green OTHER</span></col>
$ (window).load(function() {
jQuery.onCreate("*",initRanker);
});
它将在页面加载时工作,然后从那里中断。如果我改成:
$ (window).click(function() {
jQuery.onCreate("*",initRanker);
});
它仅在捕获点击事件时才起作用。
我想知道如何修改它以基本上适用于两者,或者为如何实现该结果指明正确的方向。
任何帮助将不胜感激。
function initRanker() {
if ($ (".blueRow").parent().is(":visible")) {
console.log("Blue i am visible");
$ (".blueCol").parent().show();
$ (".redCol").parent().hide();
$ (".greenCol").parent().hide();
$ (".sq-cardsort-bucket-c6").hide();
$ (".sq-cardsort-bucket-c7").hide();
}
else if ($ (".redRow").parent().is(":visible")){
console.log("Red i am visible");
$ (".redCol").parent().show();
$ (".blueCol").parent().hide();
$ (".greenCol").parent().hide();
$ (".sq-cardsort-bucket-c5").hide();
$ (".sq-cardsort-bucket-c7").hide();
}
else if ($ (".GreenRow").parent().is(":visible")){
console.log("Green i am visible");
$ (".greenCol").parent().show();
$ (".blueCol").parent().hide();
$ (".redCol").parent().hide();
$ (".sq-cardsort-bucket-c5").hide();
$ (".sq-cardsort-bucket-c6").hide();
}
}
$ (window).load(function() {
jQuery.onCreate("*",initRanker);
});
$ (window).click(function() {
jQuery.onCreate(".blueRow",initRanker);
});
$ (window).click(function() {
jQuery.onCreate(".redRow",initRanker);
});
$ (window).click(function() {
jQuery.onCreate(".GreenRow",initRanker);
});
答: 暂无答案
评论
onCreate()
正在创建在事件发生时运行的侦听器。单击时添加另一个侦听器可能不是您想要的。你应该直接打电话。create
initRanker()
$(window).click(initRanker)