0
同じタイトルの質問がありますが、私の問題には答えがありませんでした。 私はウェブサイト上にヘルパーを実装しています。今、私は「オン/オフ」ボタンを持っています。私が "on"をオンにするたびに、HTML要素の中にはjquery UIウィジェットへのリンクとなるものがあります。JQuery UIダイアログウィジェットが複数回開きます
問題は:毎回、「オン」をクリックすると、クリックイベントのオープニングウィジェットの数のカウンターがあるようです。
私はこれを解決する方法がわかりません。 他に誰かができますか?おかげさまで
(function ($, bc, opc) {
var counter=0;
// On-Click function:
$.fn.opcuaHelp = function () {
counter= counter+1;
return this.each(function () {
$(this).attr("data-opcua-help-enabled", "true");
var $this = $(this);
var $that = $(this);
$this.css({"color":"#2196F3"})
if ($this.hover()){$($this).hover(function() {
$(this).css({"display":"block","transform-origin":"100% 0%","animation":"fadeIn 0.3s ease-in-out"})
});}
var helptext = "" ;
getHelpText("ns=1;g=562e2ba3-38f6-491e-8331-008492f2ae68")
.then(function(result) {
helptext = result;
var $hoverhelper = $("<span class='hoverhelper'></span>");
$hoverhelper.append(helptext);
$this.append($hoverhelper);
}) ;
$this.click(function klicken () {
$this.css({"color":"#0000FF"})
getHelpText("ns=1;g=562e2ba3-38f6-491e-8331-008492f2ae68")
.then(function(result) {
helptext = result;
var $helper = $("<span class='helpwidget'></span>");
$helper.append(helptext);
var $dialog = dialog;
$dialog.empty();
$('span[class^="hoverhelper"]').remove();
$helper.dialog({title: $that.text(), buttons: { "1": { id: 'close', text: 'Close', click: function(){ $(this).dialog("close"); }, "class": "orange" },
}});
}
}) ;
});
});
} ;
//Off-click function:
$.fn.opcuaHelp1 = function () {
return this.each(function () {
$(this).attr("data-opcua-help-enabled", "false");
// $("#helpid").remove();
$("[data-opcua-help-enabled]").css({"color":"black"});
$('span[class^="hoverhelper"]').remove();
$(this).removeAttr("display");
$(this).removeAttr("transform-origin");
$(this).removeAttr("animation");
})
}
} (jQuery, $BC, opcua))