Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (2023)

Galaxy S22 Ultra

  • REVIEWS
  • SPECIFICATIONS
  • SUPPORT
  • COMPARE

BUY NOW

  • Highlights
  • Showroom
  • Models
  • Accessories
  • Gallery
  • My S22 Ultra
  • REVIEWS
  • SPECIFICATIONS
  • SUPPORT
  • COMPARE

GALAXY S22 vs GALAXY S22+ vs GALAXY S22 ULTRA

Discover the phones bringing epic to your everyday

Colours

  • Galaxy S22 Ultra

    • Galaxy S22 Ultra

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (1)

    GO TO GALAXY S22 ULTRA

    Colours

    Online Exclusive

  • Galaxy S22+

    • Galaxy S22+

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (2)

    GO TO GALAXY S22 | S22+

    Colours

    Online Exclusive

  • Galaxy S22

    • Galaxy S22

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (3)

    GO TO GALAXY S22 | S22+

    Colours

    Online Exclusive

Your turn. See the phone in all its glory

  • Colours

    • Burgundy
    • Green
    • Phantom White
    • Phantom Black

    Online Exclusive

    • Graphite
    • Sky Blue
    • Red
  • Colours

    • Phantom White
    • Green
    • Pink Gold
    • Phantom Black

    Online Exclusive

    • Graphite
    • Cream
    • Sky Blue
    • Violet
  • Colours

    • Bora Purple
    • Phantom White
    • Green
    • Pink Gold
    • Phantom Black

    Online Exclusive

    • Graphite
    • Cream
    • Sky Blue
    • Violet

Display & Size

Three sizes, two designs, one incredible line-up.1

  • Galaxy S22 Ultra

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (4)

    6.8”

    Edge Quad HD+

    Dimensions:
    77.9 x 163.3 x 8.9mm
    Weight:
    229g(mmW), 228g(sub6)
    Biometric Authentication:
    Ultrasonic Fingerprint Face recognition
  • Galaxy S22+

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (5)

    6.6”

    Flat FHD+

    Dimensions:
    75.8 x 157.4 x 7.6mm
    Weight:
    196g(mmW), 195g(sub6)
    Biometric Authentication:
    Ultrasonic Fingerprint Face recognition
  • Galaxy S22

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (6)

    6.1”

    Flat FHD+

    Dimensions:
    70.6 x 146 x 7.6mm
    Weight:
    168g(mmW), 167g(sub6)
    Biometric Authentication:
    Ultrasonic Fingerprint Face recognition

Dynamic AMOLED 2X with Vision Booster

Our bright displays with super smooth scrolling.

  • Galaxy S22 Ultra

    1750 nits

    120Hz (1-120Hz)

  • Galaxy S22+

    1750 nits

    120Hz (48-120Hz)

  • Galaxy S22

    1300 nits

    120Hz (48-120Hz)

Durability

Our strongest aluminum frame, tough glass and water and dust resistance.2

  • Galaxy S22 Ultra

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (7)

      Armor Aluminium frame

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (8)

      Corning® Gorilla® Glass Victus®+

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (9)

      IP68

  • Galaxy S22+

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (10)

      Armor Aluminium frame

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (11)

      Corning® Gorilla® Glass Victus®+

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (12)

      IP68

  • Galaxy S22

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (13)

      Armor Aluminium frame

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (14)

      Corning® Gorilla® Glass Victus®+

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (15)

      IP68

Front Camera

It's never been easier to put your best face forward.

  • Galaxy S22 Ultra

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (16)

    40MP

    Selfie Camera

  • Galaxy S22+

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (17)

    10MP

    Selfie Camera

  • Galaxy S22

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (18)

    10MP

    Selfie Camera

Rear Camera & Zoom

Capture incredible detail and clarity, all with a tap.

  • Galaxy S22 Ultra

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (19)
    • 1

      12MP

      Ultra Wide Camera

    • 2

      108MP

      Wide-angle Camera

    • 3 4

      10MP

      2 Telephoto Cameras

    • 100X

      Space Zoom3

  • Galaxy S22+

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (20)
    • 1

      12MP

      Ultra Wide Camera

    • 2

      50MP

      Wide-angle Camera

    • 3

      10MP

      Telephoto Camera

    • 30X

      Space Zoom4

  • Galaxy S22

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (21)
    • 1

      12MP

      Ultra Wide Camera

    • 2

      50MP

      Wide-angle Camera

    • 3

      10MP

      Telephoto Camera

    • 30X

      Space Zoom4

Battery

Power through your day and way beyond.5,6

  • Galaxy S22 Ultra

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (22)

    5000mAh (typical)

    Audio Playback:
    Up to 81 hours

    45W Super Fast Charging7

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (23)
  • Galaxy S22+

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (24)

    4500mAh (typical)

    Audio Playback:
    Up to 69 hours

    45W Super Fast Charging7

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (25)
  • Galaxy S22

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (26)

    3700mAh (typical)

    Audio Playback:
    Up to 54 hours

    25W Super Fast Charging7

    Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (27)

Storage

Enough space to keep all your favourite low-light photos and videos.8

  • Galaxy S22 Ultra

    • 1TB
    • 512GB
    • 256GB
    • 128GB
  • Galaxy S22+

    • -Not provided
    • -Not provided
    • 256GB
    • 128GB
  • Galaxy S22

    • -Not provided
    • -Not provide
    • 256GB
    • 128GB
Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (28)

Sync your Gallery with OneDrive, and enjoy 6 months of 100GB OneDrive cloud storage with Galaxy S22 Series.9

*Terms and conditions apply.

*1TB storage option available only on Samsung.com.

S Pen Compatibility

The first built-in S Pen on Galaxy S has an IP68 rating and puts precision at your fingertips.3

  • Galaxy S22 Ultra

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (29)

      S Pen

    • Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (30)

      IP68

  • Galaxy S22+

    • -Not provided

    • -Not provided

  • Galaxy S22

    • -Not provided

    • -Not provided

Previous page Next page

  • HIGHLIGHTS
  • SHOWROOM
  • MODELS
  • ACCESSORIES
  • GALLERY

Go to Galaxy S22 | S22+

Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (36)

Make the smart switch

EXPLORE MORE

Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (37)

BUY NOW PRE-REGISTRATION Pre-order now WHERE TO BUY

Trade-in to trade up

Get an instant discount of up to £520 by trading in your old phone.**

LEARN MORE

Life opens up with Galaxy

We care about the entire lifecycle of our phones. Our products are made different to make a difference not just in your life, but in the world.

EXPLORE MORE

Compare | Galaxy S22 Vs S22+ Vs S22 Ultra | Samsung UK (38)

- High bandwidth mode - Low bandwidth mode

*All specifications and descriptions provided herein may be different from the actual specifications and descriptions for the product. Samsung reserves the right to make changes to this document and the product described herein, at anytime, without obligation on Samsung to provide notification of such change. All functionality, features, specifications, GUI and other product information provided in this document including, but not limited to, the benefits, design, pricing, components, performance, availability, and capabilities of the product are subject to change without notice or obligation. The contents within the screen are simulated images and are for demonstration purposes only.

**Purchase from Samsung.com by 31/05/22. £520 value based on Galaxy Z Fold3. Values can vary by model and condition of trade-in device, and on purchases of exclusive colour devices. Purchased device will be blocked if you don't send us your trade-in device. T&Cs apply.

  1. Measured diagonally, Galaxy S22's screen size is 6.1” in the full rectangle and 5.9” with accounting for the rounded corners, Galaxy S22+'s screen size is 6.6” in the full rectangle and 6.4” with accounting for the rounded corners and Galaxy S22 Ultra's screen size is 6.8” in the full rectangle and 6.8” with accounting for the rounded corners; actual viewable area is less due to the rounded corners and camera hole.
  2. Galaxy S22, S22+ and S22 Ultra and Galaxy S22 Ultra's S Pen are rated as IP68. Based on test conditions for submersion in up to 1.5 meters of freshwater for up to 30 minutes. Not advised for beach or pool use.
  3. 100X Space Zoom includes 10x Optical Zoom and 100x digital zoom with AI Super Resolution technology. Zooming in past 10x may cause some image deterioration.
  4. 30X Space Zoom includes 3x Optical Zoom and 30x digital zoom with AI Super Resolution technology. Zooming in past 3x may cause some image deterioration.
  5. Typical value tested under third-party laboratory condition. Typical value is the estimated average value considering the deviation in battery capacity among the battery samples tested under IEC 61960 standard. Rated (minimum) capacity is 3590mAh for Galaxy S22, 4370mAh for Galaxy S22+ and 4855mAh for Galaxy S22 Ultra. Actual battery life may vary depending on network environment, usage patterns and other factors.
  6. Estimated against the usage profile of an average/typical user. Independently assessed by Strategy Analytics between 2021.12.08–12.20 in USA and UK with pre-release versions of SM-S901, SM-S906, SM-S908 under default setting using 5G Sub6 networks (NOT tested under 5G mmWave network). Actual battery life varies by network environment, features and apps used, frequency of calls and messages, number of times charged, and many other factors.
  7. The USB Implementers Forum, Inc. (USB-IF) was established in 1995 to support and accelerate the market and consumer adoption of USB compliant devices. Galaxy S22, S22+ and S22 Ultra's Super Fast Charging has been certified to be compliant to the USB standards which means your products have met the highest standards in the industry. This certification can be found on www.usb.org.
  8. Actual storage space may vary by model, file size and format.
  9. Six-month free trial of OneDrive 100GB cloud storage available for consumers who have purchased a Galaxy S22, S22+ or S22 Ultra only. Availability may vary. Google Play’s terms and conditions apply. Refer to https://www.microsoft.com/onedrive-samsung-offer for details.

').appendTo('body'); let $modalAccessibility = $('body').children(':not(script):not(noscript)').not($modal), $modalInner = null, $modalWrapper = null, $modalScrollArea = null, $modalContent = null, $modalUpDownBtn = null, $modalArrowBtns = { up: null, down: null }, $prevClickButton = null, $loaddingBar = null, isModalOpen = false, closeClickAble = false, arrowClicked = false; const _init = function () { $modal.html($('#modelsModal').html()).attr({ tabIndex: -1, 'aria-hidden': 'true' }); $('#modelsModal').remove(); assets(); addEvent(); return this; }; const addEvent = function () { $modal.find('.up-down-scroll>button.btns').on('click', arrowClickScrollModal); $modalScrollArea.on('scroll.modal360Scroll', fnDedounce(modalScroll, 150, true)); // default Modal binding event $('.o_btn-show-modal').on('click.showModal', onClickHandler); }; const assets = function () { // asset $loaddingBar = $modal.find('.loading-bar'); $modalInner = $modal.find('.models_modal-inner'); $modalWrapper = $modal.find('.models_modal-wrapper') $modalScrollArea = $modal.find('.models_modal-scroll'); $modalContent = $modal.find('.models_modal-content'); $modalUpDownBtn = $modal.find('.up-down-scroll'); $modalArrowBtns = { up: $modalUpDownBtn.find('button.btn-up'), down: $modalUpDownBtn.find('button.btn-down') }; } const arrowButtonEnableCheck = function (isClicked) { let scrollTop = Math.ceil($modalScrollArea.scrollTop()); let maxScrollHeight = Math.floor($modalScrollArea.prop('scrollHeight') - $modalScrollArea.height()); $modalArrowBtns.up.prop({ disabled: !scrollTop }); $modalArrowBtns.down.prop({ disabled: (scrollTop >= maxScrollHeight) }); if (isClicked) { if (!scrollTop) { $modalUpDownBtn.find('button.btn-down').focus(); } if (scrollTop >= maxScrollHeight) { $modalUpDownBtn.find('button.btn-up').focus(); } arrowClicked = false; }; }; const arrowClickScrollModal = function () { arrowClicked = true; let scrollTop = Math.ceil($modalScrollArea.scrollTop()); scrollTop += $(this).hasClass('btn-up') ? -100 : 100, maxScrollHeight = Math.floor($modalScrollArea.prop('scrollHeight') - $modalScrollArea.height()); scrollTop = Math.min(Math.max(0, scrollTop), maxScrollHeight); $modalScrollArea.stop().__animate({ scrollTop: scrollTop }, { queue: false, duration: 450, complete: function () { arrowButtonEnableCheck(true); } }); }; const escKeyCheck = function (e) { if (e.keyCode == 27 || e.originalEvent.key == 'Escape') { if (typeof (Models360) != undefined && $modal.find('.models_modal-goods').hasClass('is-show')) { Models360.hideDeviceModal(); } else { $modal.find('.models_modal-close>button').off('click.close'); _hide(); } } }; const _onShow = function ($target, $button) { ModelsModal.html($target.html()); ModelsModal.show(); $button && ModelsModal.setPrevFocusButton($button[0]); ModelsModal.loadBar.off(); Models360.init(); Models360.setup(); } const onClickHandler = function () { let $button = $(this), target = $button.attr('href') || $button.data('target'), $target = $(target); _onShow($target, $button); return false; }; const _html = function (s) { const prefix = 'clone-' $modalContent.html(s); $modalContent.find('input:radio').each(function () { this.name = prefix + this.name; this.id = prefix + this.id; $(this).next('label').attr({ 'for': this.id }); }) }; const _show = function () { isModalOpen = true; GALAXY.setTransitionEndEvent($modal, shown); GALAXY.noScroll.on(true); // body position fixed. $modal.addClass('is-modal-open').removeAttr('tabIndex aria-hidden').trigger('show'); $modalAccessibility.each(oAccessibility.on); }; const vAlignCheck = function () { // vertical align Modal Content let check = (GALAXY.sizeMode > 2) && ($modalScrollArea.height() >= $modalInner.outerHeight()); $modalWrapper && $modalWrapper.addClass('vAlign-check').decideClass('vAlign', check); // up&down button visibility check let modalCheck = (Math.floor($modalScrollArea.height()) < Math.floor($modalInner.outerHeight())); $modalUpDownBtn.decideClass('btn-show', modalCheck); modalScroll(); }; const modalDimdCheck = function (e) { if (!$(e.target).closest('.models_modal-wrapper').length) { _hide(); } }; const modalScroll = function () { if (!arrowClicked) { arrowButtonEnableCheck(); } }; const shown = function () { vAlignCheck(); $modal.trigger('shown').find('.models_modal-close>button').one('click.close', _hide).focus(); $(document).on({ 'keydown.escKey': escKeyCheck, 'mousedown.escKey touchstart.escKey': modalDimdCheck }); $(window).on('resize.modal360Resize', fnDedounce(ModelsModal.resize, 150, true)); }; const _hide = function (e) { if (e) e.preventDefault(); GALAXY.setTransitionEndEvent($modal, hiden); GALAXY.noScroll.off(true); // body position fixed. $modal.removeClass('is-modal-open').attr({ tabIndex: -1, 'aria-hidden': 'true' }).trigger('hide'); $modalAccessibility.each(oAccessibility.off); $(document).off('keydown.escKey mousedown.escKey touchstart.escKey'); $(window).off('resize.modal360Resize'); }; const hiden = function () { $prevClickButton && $prevClickButton.focus(); $modal.trigger('hiden'); if (closeClickAble == true) { $prevClickButton && GALAXY.setScrollTop($prevClickButton.offset().top - GALAXY.areaHeight / 2); } ModelsModal.html(''); $prevClickButton = null; isModalOpen = false; closeClickAble = false; }; const _resize = function () { vAlignCheck(); }; const _resizeChange = function () { }; const _getModalShow = function () { return isModalOpen; }; const _setPrevFocusButton = function (target) { $prevClickButton = $(target); }; const _loadBar = { on: function () { let loadingText = $loaddingBar.data('load-txt'); $loaddingBar.find('span').text(loadingText); }, off: function () { $loaddingBar.animate({ opacity: 0 }, 450, function () { $(this).remove(); }); } } return { init: _init, show: _show, hide: _hide, html: _html, resize: _resize, $element: $modal, onShow: _onShow, getModalShow: _getModalShow, resizeChange: _resizeChange, loadBar: _loadBar, setPrevFocusButton: _setPrevFocusButton } })(); GALAXY.load(ModelsModal.init); /*!--GALAXY-MODELS-JS--*/ window.Models360 = { element: { $Iframe: null, $DeviceList: null, $AccessibilityElements: null }, selectedText: null, init: function () { this.assets(); this.default(); this.addEvent(); this.resize(); }, assets: function () { let _ = this, o = _.element, $model = null; o.$modal = $('.models_modal'); o.$Iframe = o.$modal.find('iframe'); o.$DeviceList = o.$modal.find('ul.models_modal-devices > li.models_modal-device-list'); o.$AccessibilityElements = o.$modal.find('.o_iframe, .models_modal-close, .models_modal-goods-header, .models_modal-colors-btn, .up-down-scroll'); _.selectedText = o.$Iframe.data('selectedTitle'); }, default: function () { const _ = this, o = _.element; // Default model let device = o.$Iframe.data('defaultModel'); // Default Color o.$DeviceList.each(function () { let $this = $(this); let defaultColor = $this.data('default-color') || $this.find('input:radio:first').attr('value'); $this.find('input:radio').each(function () { this.checked = (this.value == defaultColor); }); }); this.setup({ device: device }) }, setup: function (value) { const _ = Models360, o = _.element; let v = $.extend({ device: '', color: '' }, value); let $selectDevice = o.$DeviceList.filter('[data-device="' + v.device + '"]'); if ($selectDevice.length) { o.$DeviceList.removeClass('on').find('>button').removeAttr('title'); $selectDevice.addClass('on').find('>button').attr({ title: _.selectedText }); if (v.color) { let $selectColor = $selectDevice.find('.models_modal-colors input:radio[value="' + v.color + '"]') if ($selectColor.length) { $selectDevice.find('input:radio').prop('checked', false); $selectColor.prop('checked', true); } } } this.iframeUrlChange(); }, addEvent: function () { let o = this.element; o.$DeviceList.find('>button.models_modal-device-btn').on('click', this.chagneDevice); o.$DeviceList.find('ul.colorchip input:radio').on('change', this.changeColor); o.$modal.find('.models_modal-colors-btn>button').on('click', this.showDeviceModal.bind(this)); o.$modal.find('.models_modal-goods-close>button').on('click touchstart mousedown', this.hideDeviceModal.bind(this)); $(window).off('resize.modelsModalResize').on('resize.modelsModalResize', this.resize.bind(this)); }, chagneDevice: function () { const _ = Models360, o = _.element; const $itemLi = $(this).parent(); if (!$itemLi.hasClass('on')) { const deviceIndex = $itemLi.index(); o.$DeviceList.removeClass('on') .find('>button').removeAttr('title') .parent().eq(deviceIndex).addClass('on') .find('>button').attr({ title: _.selectedText }); _.iframeUrlChange(); } GALAXY.isGalaxy && GALAXY.tracking.call(this); }, changeColor: function () { const _ = Models360, o = _.element; let iframeSrc = o.$Iframe.attr('src').split('#')[0]; iframeSrc += ('#color=' + this.value); o.$Iframe.attr({ src: iframeSrc }); GALAXY.isGalaxy && GALAXY.tracking.call(this); }, iframeUrlChange: function () { const _ = Models360, o = _.element; const $selectList = o.$DeviceList.filter('.on'); const modelName = $selectList.data('device'); const modelColor = $selectList.find('input:radio:checked').attr('value'); let iframeSrc = [o.$Iframe.data('src'), 'model_name=' + modelName, 'color=' + modelColor, 'zoom=120'].join('&'); o.$Iframe.attr({ src: iframeSrc }); }, showDeviceModal: function() { const _ = Models360, o = _.element; const $modalScrollWrap = o.$modal.find('.models_modal-scroll'), scrollMove = Math.floor($modalScrollWrap.prop('scrollHeight') - $modalScrollWrap.height())/2; o.$modal.find('.models_modal-goods').addClass('is-show'); o.$modal.find('.models_modal-goods-dimd').addClass('is-show').attr('tabindex','-1'); $modalScrollWrap.stop().animate({'scrollTop': scrollMove}, 250, function(){ o.$modal.find('.models_modal-goods-close>button').focus(); }); o.$AccessibilityElements.each(oAccessibility.on); $(document).on({'mousedown.deviceModalCloseCheck touchstart.deviceModalCloseCheck': _.closeDeviceModal}); if ( $(o.$Iframe[0].contentDocument).length ) { $(o.$Iframe[0].contentDocument).find('body').get(0) && $(o.$Iframe[0].contentDocument).find('body').attr({'tabindex':'-1', 'aria-hidden': 'true'}); $(o.$Iframe[0].contentDocument).find('body').get(0) && $(o.$Iframe[0].contentDocument).find('a, button, input').attr({'tabindex':'-1', 'aria-hidden': 'true'}); } }, closeDeviceModal: function (e) { if (!$(e.target).closest('.models_modal-goods-inner').length) { Models360.hideDeviceModal(); } }, hideDeviceModal: function(e) { const _ = Models360, o = _.element; if ( o.$modal.find('.models_modal-goods').hasClass('is-show') ) { o.$modal.find('.models_modal-goods').removeClass('is-show'); o.$modal.find('.models_modal-goods-dimd').removeClass('is-show').removeAttr('tabindex'); o.$AccessibilityElements.each(oAccessibility.off); // focus o.$modal.find('.models_modal-colors-btn>button').focus(); // android & ios voiceover bug setTimeout(function() { o.$modal.find('.models_modal-colors-btn>button').focus() },350); $(document).off('mousedown.deviceModalCloseCheck touchstart.deviceModalCloseCheck'); if ( $(o.$Iframe[0].contentDocument).length ) { $(o.$Iframe[0].contentDocument).find('body').get(0) && $(o.$Iframe[0].contentDocument).find('body').removeAttr('tabindex aria-hidden'); $(o.$Iframe[0].contentDocument).find('body').get(0) && $(o.$Iframe[0].contentDocument).find('a, button, input').removeAttr('tabindex aria-hidden'); } } }, touchDeviceArea: function (e) { const _ = Models360 if (!$(e.target).closest('.models_modal-goods-inner').length) { _.hideDeviceModal(); } }, resize: function () { const _ = this, o = _.element; // iframe Height Setting setTimeout(function () { let iframeHeight = 0; let totleHeight = (parseFloat(o.$modal.find('.models_modal-inner').css('paddingTop')) + parseFloat(o.$modal.find('.models_modal-inner').css('paddingBottom')) + parseFloat(o.$modal.find('.models_modal-goods-header').height())); iframeHeight = o.$modal.find('.models_modal-wrapper:visible').height() - totleHeight; o.$Iframe.parent().css({ height: iframeHeight }); }, 450); // Set Header position let $header = o.$modal.find('.models_modal-goods-header').detach(); if (GALAXY.sizeMode > 2) { $header.insertAfter(o.$modal.find('.models_modal-goods-close')); _.hideDeviceModal(); } else { $header.insertAfter(o.$modal.find('.models_modal-colors-btn')); } } }; /*!--//GALAXY-MODELS-JS--*/ const Models = (function () { const $container = $('section.device'), $wrapper = $('.f_compare'), $lastSection = $('.m_content-models:last .f_container'), $modelsList = $('#contents ul.o_models'), showDevice = { mobile: $wrapper.data('mobileShow').split(',') } dropdownTitles = { open: $wrapper.data('dropdownOpenTitle'), close: $wrapper.data('dropdownCloseTitle'), selected: $wrapper.data('dropdownSelectedTitle') }; let $deviceButton = $wrapper.find('.o_device-name').find('>a, >button'), $dorpdownMenus = $wrapper.find('ul.o_dropdown button'), cssTop = 0, offsetTop = 0, offsetBottom = 0, oModelsList = [], oModelsListHtml = [], oModelsListItems = [], cloneRadioPrefix = 'clone_', cloneRadioPrefixCount = 1, initalize = false; const _init = function () { if (!initalize) { initalize = true; var removeIndex = -1; $('ul.o_models.compare').find('>li.o_models-item').each(function (i) { if (!$(this).find('input:radio').length) { removeIndex = i; } }) if (removeIndex > -1) { $('.o_dropdown').each(function (j, dropdown) { $(dropdown).find('>li').eq(removeIndex).remove(); }); $modelsList.each(function () { $(this).find('>li').eq(removeIndex).remove(); }); $('ul.models_modal-devices').each(function () { $(this).find('>li.models_modal-device-list').eq(removeIndex).remove(); let l = $(this).find('>li.models_modal-device-list').length; $(this).find('.models_modal-device-btn').addClass('row-' + l); }) let colsClass = $('ul.compare > li.o_models-item').length; $('#contents').addClass('models-cell-cols' + colsClass); } $('ul.o_models.compare').find('ul.colorchip').each(function () { let $firstRadio = $(this).find('input:radio:first'); let $selectColorName = $firstRadio.closest('.o_color-area').find('.o_color-chip-selected'); let label = $firstRadio.attr('aria-label'); $selectColorName.text(label); }); cloneHtml(); hiddenItem(); addEvent(); initColorItems(); this.resize(); } return this; }; const _resize = function () { if (!initalize) { return; } let subNavHeight = $('#subnav, .floating-navigation__wrap').height() || 0; let t = (GALAXY.sizeMode < 2) ? 30 : 45; let bgT = (GALAXY.sizeMode < 2) ? 5 : 10; cssTop = subNavHeight + t; offsetTop = $wrapper.find('.o_models-item:visible').offset().top - cssTop; offsetBottom = $lastSection.offset().top - subNavHeight; let bgHeight = $('.o_device-name:visible').height() + cssTop + bgT; $('.o_models-name-bg').css({ height: bgHeight }); this.scroll(); }; const _scroll = function () { if (!initalize) { return; } let scrollTop = GALAXY.scrollTop; let isFixed = (GALAXY.areaHeight > 300); if (isFixed) { let top = (scrollTop >= offsetTop) ? cssTop : ''; $wrapper.find('.o_device-name').css({ top: top }); $wrapper.decideClass('is-show-fixed', (scrollTop >= offsetTop)) $wrapper.decideClass('is-hide-fixed', (scrollTop >= offsetBottom)) } else { $wrapper.removeClass('is-show-fixed'); } }; const cloneHtml = function () { $modelsList.each(function (i) { let $ul = $(this); oModelsList[i] = $ul; oModelsListHtml[i] = $ul.html(); $ul.find('>li.o_models-item').each(function (j) { if (typeof (oModelsListItems[j]) == 'undefined') { oModelsListItems[j] = []; } oModelsListItems[j].push(this.outerHTML); //.replace(/is-models-hide/g, ''); }); }); }; const resetHtml = function () { $.each(oModelsList, function (i) { $(this).html(oModelsListHtml[i]); }); $modelsList.find('>li.o_models-item').removeClass('order1 order2 is-models-none'); addEvent(); imageLoad(); initColorItems(); hiddenItem(); }; const imageLoad = function () { var $images = $('section.m_content-models').find('figure > img'); $images.each(function (i, o) { o.src = GALAXY.setMediaBaseURL(GALAXY.getImageSources($(o))[GALAXY.sizeMode]); }); }; const hiddenItem = function () { let visibleLength = $('ul.o_models-list.compare>li').length > 2; $modelsList.find('>li.o_models-item').each(function () { let $item = $(this), orderCheck = false; $.each(showDevice.mobile, function (i) { let className = '.' + this.replace(/\s/g, ''); if ($item.filter(className).get(0)) { $item.filter(className).addClass('order' + (i + 1)); orderCheck = true; } }); if (visibleLength && !orderCheck) { $item.addClass('is-models-none'); } }); if (GALAXY.sizeMode != 1) { $wrapper.find('.o_device-name').find('>a,>button').addClass('disabled'); } $(document.documentElement).addClass('on-models'); }; const changeItem = function (selectIndex, areaIndex) { for (let i = 0, l = oModelsList.length; i < l; i++) { $(oModelsList[i].find('>li.o_models-item')[areaIndex]).html($(oModelsListItems[selectIndex][i]).html()); } const $item = $wrapper.find('li.o_models-item').eq(areaIndex); $item.find('input:radio').each(function () { this.id = cloneRadioPrefix + cloneRadioPrefixCount + '_' + this.id; this.name = cloneRadioPrefix + cloneRadioPrefixCount + '_' + this.name; $(this).next('label').prop('for', this.id); }); cloneRadioPrefixCount++; imageLoad(); initColorItems($item); $item.find('.o_device-name').find('>a,>button').focus(); _scroll(); }; const initColorItems = function (target) { let $target = target || $wrapper.find('li.o_models-item'); $target.each(function () { let $item = $(this); let $colorChipArea = $item.find('ul.colorchip input:radio:checked, ul.colorchip>li.colorchip-item.on input:radio'); if (!$colorChipArea.length) { $colorChipArea = $item.find('ul.colorchip input:radio:first'); } changeColorItem($colorChipArea[0]); }).find('input').on('change', onColorChange); }; const onColorChange = function () { changeColorItem(this); GALAXY.isGalaxy && GALAXY.tracking.call(this); }; const changeColorItem = function (radio) { const $radio = $(radio); const $item = $radio.closest('.o_models-item'); const $image = $item.find('.o_device-image img'); const $selectColorName = $radio.closest('.o_color-area').find('.o_color-chip-selected'); const $colorchipNames = $item.find('.o_color-chip-selected'); const selectColor = radio.value; const selectDevice = radio.name.replace(/clone_[0-9]+_{1}/g, ''); //cloneRadioPrefix: clone_ const selectColorName = $radio.attr('aria-label'); const imageAlt = $radio.data('img-alt'); const imageSrc = '//images.samsung.com/is/image/samsung/assets/uk/smartphones/galaxy-s22-ultra/models/' + selectDevice + '_models_colors_' + selectColor + '.jpg'; radio.checked = true; $image.attr({ src: imageSrc, alt: imageAlt }); if (!$selectColorName.hasClass('on')) { $colorchipNames.attr({ 'aria-hidden': 'true' }).removeClass('on'); $selectColorName.removeAttr('aria-hidden').addClass('on'); } $selectColorName.html(selectColorName); }; const _resizeChange = function () { if (!initalize) { return; } // dropdown close button $deviceButton.each(function (i, button) { dropdown.close($(button)); }); if (GALAXY.sizeMode == 1 || GALAXY.prevSizeMode == 1) { resetHtml(); } }; const dropdown = { open: function ($button) { $button.attr({ title: dropdownTitles.close }); $button.addClass('is-open'); }, close: function ($button) { $button.attr({ title: dropdownTitles.open }); $button.removeClass('is-open'); $button.is(':visible') && setTimeout(function () { $button.focus(); }, 350); }, toggle: function (e) { if (e) e.preventDefault(); let $button = $(this); let openStatus = !$button.hasClass('is-open'); dropdown[openStatus ? 'open' : 'close']($button); }, select: function (e) { if (e) e.preventDefault(); let $selectBtn = $(this); let $button = $selectBtn.closest('.o_device-name').find('>a, >button'); let selectIndex = $selectBtn.parent().index(); let thisAreaIndex = $selectBtn.closest('.o_models-item').index(); if (!$selectBtn.hasClass('is-selected')) { changeItem(selectIndex, thisAreaIndex); addEvent(); } dropdown.close($button); // dropdown.close($button); } } const addEvent = function () { $deviceButton = $wrapper.find('.o_device-name').find('>a, >button'); $dorpdownMenus = $wrapper.find('ul.o_dropdown button'); $deviceButton .off({ click: dropdown.toggle }) .on({ click: dropdown.toggle }) .attr({ title: dropdownTitles.open }); $dorpdownMenus .off({ click: dropdown.select }) .on({ click: dropdown.select }) .filter('.is-selected').attr({ title: dropdownTitles.selected }); }; return { init: _init, scroll: _scroll, resize: _resize, resizeChange: _resizeChange } })(); const setSectionsZIndex = function () { const sections = document.querySelectorAll('#contents > section'); for (let i = 0, l = sections.length; i < l; i++) { sections[i].style.zIndex = l - i; }; }; const onLoadHashCheck = function () { const hashName = location.href.split('#')[1] || null; if (hashName != null) { if (hashName == 'see-in-360') { let $target = $('#modal-360'); ModelsModal && ModelsModal.onShow($target); return; } } }; const onScroll = function () { Models.scroll(); }; const onResize = function () { Models.resize(); if ((GALAXY.prevSizeMode > -1) && (GALAXY.sizeMode != GALAXY.prevSizeMode)) { Models.resizeChange(); } }; const onLoad = function () { setSectionsZIndex(); onLoadHashCheck(); Models.init(); }; GALAXY.load(onLoad); GALAXY.scroll(onScroll); GALAXY.resize(onResize); //

// }).then(function () { GALAXY.initialize() }) });

Top Articles
Latest Posts
Article information

Author: Corie Satterfield

Last Updated: 04/02/2023

Views: 6333

Rating: 4.1 / 5 (42 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Corie Satterfield

Birthday: 1992-08-19

Address: 850 Benjamin Bridge, Dickinsonchester, CO 68572-0542

Phone: +26813599986666

Job: Sales Manager

Hobby: Table tennis, Soapmaking, Flower arranging, amateur radio, Rock climbing, scrapbook, Horseback riding

Introduction: My name is Corie Satterfield, I am a fancy, perfect, spotless, quaint, fantastic, funny, lucky person who loves writing and wants to share my knowledge and understanding with you.