Это чистое решение для JavaScript без каких-либо библиотек или плагинов:
document.addEventListener('click', function (e) {
if (hasClass(e.target, 'bu')) {
// .bu clicked
// Do your thing
} else if (hasClass(e.target, 'test')) {
// .test clicked
// Do your other thing
}
}, false);
, где hasClass
-
function hasClass(elem, className) {
return elem.className.split(' ').indexOf(className) > -1;
}
Кредит относится к Dave и Sime Vidas
Использование более современных JS, hasClass
может быть реализовано как:
function hasClass(elem, className) {
return elem.classList.contains(className);
}
Да! Вы можете определенно использовать Fabric для таких приложений. Однако в соответствии с лицензией на ресурсы , связанной с этим документом, ресурсы (шрифты и значки) могут использоваться только в том случае, если приложение каким-либо образом подключается к службе Microsoft. Это может быть так же просто, как размещение приложения в качестве веб-приложения Azure.
Вот связанная цитата из этого комментария GitHub , которая немного расширяется:
Ресурсы Fabric (шрифты, значки и логотипы продуктов) являются частью бренда Microsoft и могут использоваться только в приложениях & amp; услуги, в том числе коммерческие, которые связаны с продуктами Microsoft. К ним относятся надстройки для Office , веб-части для SharePoint и другие расширения для продуктов Microsoft. Это относится к использованию ресурсов в самом коде приложения, а также к любым проектам, созданным инструментарием.
Однако весь код Fabric (JS, CSS и т. Д.) Имеет лицензию MIT и может использоваться в коммерческих продуктах сторонних производителей. Существует даже первоклассная поддержка Selawik , открытого альтернативного пользовательского интерфейса Segoe с открытым исходным кодом. Тем не менее, сегодня нет замены шрифту иконки.
blockquote>Чтобы отказаться от этих ресурсов, вы можете заменить значки по умолчанию Fabric на что-то вроде Font Awesome, например:
import { registerIcons } from '@uifabric/styling'; import FontAwesomeIcon from '@fortawesome/react-fontawesome'; registerIcons({ icons: { 'check-square': <FontAwesomeIcon icon='check-square' />, ...etc } });
Чтобы отказаться от пользовательского интерфейса Segoe, вы можете использовать команду create Пользовательская тема, которая заменяет
defaultFontStyle
другим шрифтом. Вот CodePen, иллюстрирующий это: https://codepen.io/jahnp/pen/pYMyZM