Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

52 строки
1.2 KiB

  1. import $ from 'jquery';
  2. import {UiUtils} from './utils/UiUtils';
  3. import { detect } from 'detect-browser';
  4. import mobile from 'is-mobile';
  5. import 'focus-visible';
  6. global.$ = $;
  7. global.jQuery = $;
  8. export default class ihk {
  9. static getBrowser() {
  10. return detect();
  11. }
  12. static isMobile(){
  13. return mobile();
  14. }
  15. static init() {
  16. const mobile = ihk.isMobile();
  17. const browser = ihk.getBrowser();
  18. const html = $('html');
  19. html.addClass( mobile ? 'mobile' : 'desktop' );
  20. html.attr('data-browser', browser.name);
  21. html.attr('data-os', browser.os);
  22. }
  23. static getUrlVars() {
  24. let vars = {};
  25. window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m, key, value) {
  26. vars[key] = value;
  27. });
  28. return vars;
  29. }
  30. static realVH() {
  31. const vh = window.innerHeight * 0.01;
  32. document.documentElement.style.setProperty('--viewport-height', vh + 'px');
  33. }
  34. }
  35. ihk.realVH();
  36. $(window).on('resize', function() {
  37. ihk.realVH();
  38. });
  39. $(document).ready(function () {
  40. ihk.init();
  41. $('body').addClass('ready');
  42. // trigger das init event auf der globale jquery instanz so dass es alle modulle mitkriegen (z.B. cookie.js)
  43. //global.$('body').trigger('ihk-init');
  44. UiUtils.initUI();
  45. });