diff --git a/css/ebi-css-build/ebi-global.scss b/css/ebi-css-build/ebi-global.scss index 60631c0ec6d393d092123135926bb3bc1c912b93..badf506f4f85e67da8737dbc7fa70ddbab582626 100644 --- a/css/ebi-css-build/ebi-global.scss +++ b/css/ebi-css-build/ebi-global.scss @@ -341,6 +341,18 @@ .lead { color: $secondary-color; margin-bottom: .5rem; } } + // external links + a.external{ + &:after { + content: " x"; + font-family: "EBI-Generic"; + font-size: .65rem; + position: relative; + top: -1px; + margin-left: .4rem; + } + } + // read more a.read-more, a.readmore, diff --git a/js/foundationExtendEBI.js b/js/foundationExtendEBI.js index 73c42d60fd936df76a087081d510becece1cd859..3b35c4feac5546a6ba9e9120d61958a97316c94e 100644 --- a/js/foundationExtendEBI.js +++ b/js/foundationExtendEBI.js @@ -395,6 +395,18 @@ function invokeResponsiveMenuEBI() { } + // Programatically open external links in new tabs, and add '.external' + function addBlankTargetToExternalLinkEBI(parent) { + var parent = parent || '#content'; + $(parent + ' a').filter(function() { + return this.hostname && this.hostname !== location.hostname; + }).attr('target','_blank'); + } + function addExternalToBlankWindowLinksEBI(parent) { + var parent = parent || '#content'; + $(parent + ' a[target="_blank"]').addClass('external'); + } + /* Allow invokation of of foundation and foundationExtendEBI with data attributes <body data-foundationInvoke="document" data-foundationExtendEBI="document"> @@ -416,5 +428,9 @@ function invokeResponsiveMenuEBI() { if (bodyData.foundationExtendEBI === 'true') bodyData.foundationExtendEBI = 'document'; $(bodyData.foundationExtendEBI).foundationExtendEBI(); } + if (bodyData.addExternal) { + addBlankTargetToExternalLinkEBI(); + addExternalToBlankWindowLinksEBI(); + } }(jQuery));