Все свойства asp-fallback*
добавляют дополнительный JavaScript для динамической загрузки резервного src / href в случае сбоя теста.Другими словами:
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" />
<script>
(function () {
var testElement = document.createElement('span');
testElement.className = 'sr-only';
if (testElement.style.position !== 'absolute') {
var head = document.getElementsByTagName('head')[0];
var link = document.createElement('link');
link.href = '/vendor/fortawesome/fontawesome-free/css/all.css';
link.rel = 'stylesheet';
head.appendChild(link);
}
})();
</script>
Вы можете использовать атрибуты data-*
, чтобы имитировать одно и то же встроенное определение резервного href и обязательных тестов, и просто соответствующим образом изменить код, чтобы использовать их вместо жестко заданных значений, чтобы обобщить сценарий.Вам также, вероятно, будет лучше обслуживаться, если просто использовать динамическую библиотеку загрузки, которая часто имеет возможность запускать такие встроенные условные выражения (такие как fallback.io )