我试图切换2个链接(link1和link2)。
单击link1并禁用自身并启用link2,反之亦然。
我有两个问题:
任何想法我做错了什么?
由于
<html
<head>
<script src="http://code.jquery.com/jquery-1.12.4.js"></script>
<script type="text/javascript">
$(document).ready(function(){
setToggle("domestic");
$('[id^="toggle_"]').on( "click", function() {
var domInt = $(this).attr("id").replace("toggle_", "").toString();
setToggle(domInt);
});
function setToggle(domInt) {
domInt = domInt.toUpperCase();
$("#clicked").append("domInt: " + domInt.toUpperCase() + " | ");
if (domInt == "DOMESTIC") {
$("body").off("click", "#toggle_domestic");
$("body").on("click", "#toggle_international");
$("#clicked").append("clicked domestic<br>");
} else if (domInt == "INTERNATIONAL") {
$("body").on("click", "#toggle_domestic");
$("body").off("click", "#toggle_international");
$("#clicked").append("clicked international<br>");
}
}
});
</script>
</head>
<body>
<p><a href="javascript:void(0)" id="toggle_domestic">Domestic</a> | <a href="javascript:void(0)" id="toggle_international">International</a></p>
<div id="clicked"></div>
</body>
</html
答案 0 :(得分:0)
$("body").on("click", "#toggle_domestic")/$("body").off("click", "#toggle_international");
实际上并未禁用该链接。您可以使用css
属性或返回false
来停用链接。
var domInt = $(this).attr(&#34; id&#34;)。replace(&#34; toggle _&#34;,&#34;&#34;)。toString();如果需要获取文本
,可以用$(this).text().trim()
替换
在这种情况下,使用一个公共类(anchorTag
),它定位所有需要的锚标记。因此,点击锚标记会从所有锚标记中删除notActive
css类,然后将此nonActive
删除到点击的锚标记。
$(document).ready(function() {
setToggle("domestic");
$('.anchorTag').on("click", function() {
$('.anchorTag').removeClass('notActive');
$(this).addClass('notActive')
var domInt = $(this).text().trim();
setToggle(domInt);
});
function setToggle(domInt) {
domInt = domInt.toUpperCase();
$("#clicked").append("domInt: " + domInt.toUpperCase() + " | ");
if (domInt == "DOMESTIC") {
$("#clicked").append("clicked domestic<br>");
} else if (domInt == "INTERNATIONAL") {
$("#clicked").append("clicked international<br>");
}
}
});
&#13;
.notActive {
pointer-events: none;
cursor: no-drop;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p><a href="javascript:void(0)" class="anchorTag" id="toggle_domestic">Domestic</a> |
<a href="javascript:void(0)" class="anchorTag" id="toggle_international">International</a>
</p>
<div id="clicked"></div>
&#13;