import $ from 'jquery'; class IHKAnchorLinks { constructor(section) { this.section = section.addClass('initiated'); this.headlines = []; this.initHeadlines(); this.buildLinks(); // IHK-5928 missing link to root channel $(".main-col .richtext .detail-text a[href='']").attr("href","/"); } initHeadlines() { $('.main-col h2, article.col h2, .action-col .richtext h2').each((i, element) => { const h2 = $(element); const closestActionContent = h2.closest('.action-content'); const hideOnlineMagazineContactH2 = h2.closest('.online-magazine-contact').length; if (!h2.closest('.accordion-content').length && !closestActionContent.closest(".richtext").length && !hideOnlineMagazineContactH2 && h2.text().length > 0) { if (h2.is(".showInTableOfContents") || !h2.closest(".link-collection").length) { this.headlines.push(h2); } } }); } buildLinks() { const t = this; const ul = t.section.find('ul li a'); $(ul).each((i) => { // Add Ids to text h2 const textH2 = $(this.headlines[i]); if(textH2.length) { $(textH2).addClass('has-anchor'); $(textH2).append($('').attr('id', 'titleInText' + i)); } }); } } export default IHKAnchorLinks; $('body').on('ihk-init dynamic-component-loaded gfi-dynamic-init', function () { $('.anchor-links:not(.initiated)').each(() => { new IHKAnchorLinks($(this)); }); });