如果我阅读这个权利,我认为你建议你不能改变现有的HTML,你只能影响脚本。如果是这种情况,你可以简单地隐藏你不需要的元素。
下面是一些可能为你工作:
https://jsfiddle.net/Twisty/aqmejg16/
jQuery的
jQuery(function() {
var narrow = jQuery(window).width() < 678;
if (narrow) {
console.log("Narrow Window Found.");
jQuery("#tabs").hide();
jQuery("#tab").hide();
var acc = jQuery("<div>", {
id: "accord-1"
});
jQuery("#tabs li").each(function(key, elem) {
acc.append("<h3>" + jQuery(elem).text() + "</h3>");
acc.append("<div><p>" + jQuery("#tab li:eq(" + key + ")").html() + "</p></div>");
});
jQuery("#tabs").before(acc);
acc.accordion({
collapsible: true
});
} else {
jQuery("ul#tabs li").click(function(e) {
if (!jQuery(this).hasClass("active")) {
var tabNum = jQuery(this).index();
var nthChild = tabNum + 1;
jQuery("ul#tabs li.active").removeClass("active");
jQuery(this).addClass("active");
jQuery("ul#tab li.active").removeClass("active");
jQuery("ul#tab li:nth-child(" + nthChild + ")").addClass("active");
}
});
}
});
要注意,你原来的小提琴没有包含了jQuery UI样式表,所以我补充说, 。接下来我还添加了jQuery(function() { });
以确保代码在页面准备就绪后运行。
首先我们检查窗口的宽度。我们可以有条件地隐藏内容并重新绘制我们想要的内容。由于内容仍然适用,我决定不删除或替换它们。
创建包含div
并迭代每个选项卡元素以制作标题和选项卡内容以制作每个选项的内容。将所有元素附加到文档中,然后在其上初始化accordian()
。
非常感谢这个改变! – NoSixties