简化 JQuery 代码
Simplify a JQuery code
我的页面中有很多弹出窗口 (JSBin),每个 data-toggle
都链接到一个 html div。现在通过以下脚本实现:
<script>
$('[data-toggle="popover0"]').popover({
html: true,
content: function() {
return $("#popover0-html").html()
}});
$('[data-toggle="popover1"]').popover({
html: true,
content: function() {
return $("#popover1-html").html()
}});
$('[data-toggle="popover2"]').popover({
html: true,
content: function() {
return $("#popover2-html").html()
}});
</script>
我想通过说 "for all data-toggle with an ID, we return the html whose id is ID
+ -html
" 来简化上面的代码。有谁知道如何实现这一点?
<script>
for (var i=0;i<3;i++) {
var selector = '[data-toggle="popover'+ i +'"]';
var popover = '#popover' + i +'-html';
$(selector ).popover({
html: true,
content: function() {
return $(popover ).html()
}});
}
</script>
一个选项是:
$('[data-toggle]').popover({
html: true,
content: function() {
var id = "#" + this.getAttribute('data-toggle') + "-html";
return $(id).html();
}
});
以上脚本使用 data-toggle
属性的值来选择目标元素。它适用于 1 个或多个元素。
我的页面中有很多弹出窗口 (JSBin),每个 data-toggle
都链接到一个 html div。现在通过以下脚本实现:
<script>
$('[data-toggle="popover0"]').popover({
html: true,
content: function() {
return $("#popover0-html").html()
}});
$('[data-toggle="popover1"]').popover({
html: true,
content: function() {
return $("#popover1-html").html()
}});
$('[data-toggle="popover2"]').popover({
html: true,
content: function() {
return $("#popover2-html").html()
}});
</script>
我想通过说 "for all data-toggle with an ID, we return the html whose id is ID
+ -html
" 来简化上面的代码。有谁知道如何实现这一点?
<script>
for (var i=0;i<3;i++) {
var selector = '[data-toggle="popover'+ i +'"]';
var popover = '#popover' + i +'-html';
$(selector ).popover({
html: true,
content: function() {
return $(popover ).html()
}});
}
</script>
一个选项是:
$('[data-toggle]').popover({
html: true,
content: function() {
var id = "#" + this.getAttribute('data-toggle') + "-html";
return $(id).html();
}
});
以上脚本使用 data-toggle
属性的值来选择目标元素。它适用于 1 个或多个元素。