`);
}
$slides.removeClass('active');
$slides.css({
'opacity': '0',
'position': 'absolute',
'top': '0',
'left': '0',
'width': '100%',
'height': '100%',
'display': 'none'
});
$slides.each(function(index) {
var $slide = $(this);
var $img = $slide.find('.structure-banner-background');
$img.css({
'object-position': 'top left',
'position': 'absolute',
'top': '0',
'left': '0',
'width': '100%',
'height': '100%',
'display': 'block',
'object-fit': 'cover'
});
});
$slides.eq(0).addClass('active').css({
'opacity': '1',
'display': 'block'
});
$indicators.removeClass('active-item background-color-var-1')
.attr('aria-selected', 'false').attr('tabindex', '-1');
$indicators.eq(0).addClass('active-item background-color-var-1')
.attr('aria-selected', 'true').attr('tabindex', '0');
var $container = $carousel.find('.carousel-inner');
var $firstImage = $slides.eq(0).find('.structure-banner-background');
function setProperHeight() {
var windowWidth = $(window).width();
// Use guideline aspect ratio (1250x600) for consistent height calculation
// This ensures the carousel maintains proper dimensions regardless of uploaded image sizes
var aspectRatio = 600 / 1250; // 0.48 (height/width from banner guideline)
var containerWidth = $container.width();
var calculatedHeight;
// Different calculations for different screen widths
if (windowWidth <= 480) {
// Very small screens - limit height
calculatedHeight = Math.min(containerWidth * aspectRatio, window.innerHeight * 0.5);
calculatedHeight = Math.max(calculatedHeight, 200); // Minimum 200px
} else if (windowWidth <= 800) {
// Medium mobile screens
calculatedHeight = Math.min(containerWidth * aspectRatio, window.innerHeight * 0.6);
calculatedHeight = Math.max(calculatedHeight, 250); // Minimum 250px
} else {
// Desktop
calculatedHeight = Math.max(containerWidth * aspectRatio, 300);
}
$container.css({
'height': calculatedHeight + 'px',
//'min-height': '200px',
'max-height': windowWidth <= 800 ? '60vh' : 'none'
});
window.carouselHeight = calculatedHeight;
}
// Use requestAnimationFrame for smooth, frame-synced resizing without delay
var resizeScheduled = false;
$(window).on('resize', function() {
if (!resizeScheduled) {
resizeScheduled = true;
requestAnimationFrame(function() {
setProperHeight();
resizeScheduled = false;
});
}
});
if ($firstImage[0] && $firstImage[0].complete) {
setProperHeight();
} else {
$firstImage.on('load', setProperHeight);
setTimeout(setProperHeight, 1000);
}
var $firstSlideData = $slides.eq(0).find('.slide-content-data');
if ($firstSlideData.length && $('#current-slide-title').length) {
var title = $firstSlideData.find('.slide-title').text();
var text = $firstSlideData.find('.slide-text').text();
var linkText = $firstSlideData.find('.slide-link').text();
var linkHref = $firstSlideData.find('.slide-link').data('href');
$('#current-slide-title').text(title);
$('#current-slide-text').text(text);
$('#current-slide-link').html(linkText ? '' + linkText + '' : '');
}
setupInteractionHandlers();
if ($carousel.is(':hover')) {
isUserInteracting = true;
}
if (isPlaying && !isUserInteracting) {
forcedByUser = false;
startRotation();
}
updateRotationControl();
}
function setupInteractionHandlers() {
$carousel.on('mouseenter', function() {
isUserInteracting = true;
if (isPlaying && !forcedByUser) {
stopRotation();
}
});
$carousel.on('mouseleave', function() {
isUserInteracting = false;
forcedByUser = false;
clearTimeout(forceTimeout);
if (isPlaying) {
startRotation();
}
});
$carousel.on('focusin', function() {
isUserInteracting = true;
if (isPlaying && !forcedByUser) {
stopRotation();
}
});
$carousel.on('focusout', function() {
isUserInteracting = false;
if (isPlaying) {
setTimeout(function() {
if (!$carousel.find(':focus').length && isPlaying) {
forcedByUser = false;
clearTimeout(forceTimeout);
startRotation();
}
}, 100);
}
});
}
function updateSlide(index, isUserAction) {
if (isAnimating || currentSlide === index) {
return;
}
isAnimating = true;
var $currentSlide = $slides.eq(currentSlide);
var $newSlide = $slides.eq(index);
var $currentIndicator = $indicators.eq(index);
var $textWrapper = $('#current-slide-content');
var prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
var $slideData = $newSlide.find('.slide-content-data');
var newContent = {
title: $slideData.find('.slide-title').text(),
text: $slideData.find('.slide-text').text(),
linkText: $slideData.find('.slide-link').text(),
linkHref: $slideData.find('.slide-link').data('href')
};
$indicators.removeClass('active-item background-color-var-1')
.attr('tabindex', '-1');
// Only update aria-selected on user interaction, not auto-rotation
if (isUserAction) {
$indicators.attr('aria-selected', 'false');
}
$currentIndicator.addClass('active-item background-color-var-1')
.attr('tabindex', '0');
// Only update aria-selected on user interaction, not auto-rotation
if (isUserAction) {
$currentIndicator.attr('aria-selected', 'true');
}
if (prefersReducedMotion) {
$slides.removeClass('active').css({
'opacity': '0',
'display': 'none'
});
$newSlide.addClass('active').css({
'opacity': '1',
'display': 'block'
});
updateTextContent();
isAnimating = false;
} else {
// Prepare for animation
$slides.removeClass('active transitioning');
$slides.not($currentSlide).not($newSlide).css('display', 'none');
$currentSlide.css({
'display': 'block',
'opacity': '1'
});
$newSlide.css({
'display': 'block',
'opacity': '0',
'visibility': 'visible'
});
$currentSlide.animate({opacity: 0}, 400);
$newSlide.animate({opacity: 1}, 400, function() {
$currentSlide.removeClass('active').css({
'display': 'none',
'opacity': '0'
});
$newSlide.addClass('active');
$slides.not($newSlide).css('display', 'none');
isAnimating = false;
});
updateTextWithAnimation();
}
currentSlide = index;
function updateTextContent() {
$('#current-slide-title').text(newContent.title);
$('#current-slide-text').text(newContent.text);
$('#current-slide-link').html(newContent.linkText ?
'' + newContent.linkText + '' : '');
}
function updateTextWithAnimation() {
var $tempWrapper = $textWrapper.clone();
$tempWrapper.css({
position: 'absolute',
visibility: 'hidden',
height: 'auto',
width: $textWrapper.outerWidth(),
left: '-9999px',
top: '-9999px'
}).appendTo('body');
$tempWrapper.find('#current-slide-title').text(newContent.title);
$tempWrapper.find('#current-slide-text').text(newContent.text);
$tempWrapper.find('#current-slide-link').html(newContent.linkText ?
'' + newContent.linkText + '' : '');
var currentHeight = $textWrapper.outerHeight();
var newHeight = $tempWrapper.outerHeight();
$tempWrapper.remove();
$textWrapper.css('height', currentHeight + 'px');
setTimeout(function() {
$textWrapper.css('height', newHeight + 'px');
}, 10);
setTimeout(function() {
$textWrapper.css('height', 'auto');
}, 420);
setTimeout(function() {
updateTextContent();
}, 150);
}
}
function startRotation(forceStart) {
if (rotationInterval || (isUserInteracting && !forceStart)) {
return;
}
rotationInterval = setInterval(function() {
if (isAnimating) {
return;
}
if (!isUserInteracting || forcedByUser) {
var nextSlide = (currentSlide + 1) % totalSlides;
updateSlide(nextSlide, false); // false = not user action
}
}, intervalDuration);
$textboxWrapper.attr('aria-live', 'off');
}
function stopRotation() {
if (rotationInterval) {
clearInterval(rotationInterval);
rotationInterval = null;
}
$textboxWrapper.attr('aria-live', 'polite');
}
function updateRotationControl() {
var $srText = $rotationControl.find('.sr-only');
if (isPlaying) {
$rotationControl.removeClass('is-paused').addClass('is-playing');
$rotationControl.attr('aria-label', 'Automatischen Folienwechsel stoppen');
$srText.text('Stoppen');
} else {
$rotationControl.removeClass('is-playing').addClass('is-paused');
$rotationControl.attr('aria-label', 'Automatischen Folienwechsel starten');
$srText.text('Starten');
}
}
$rotationControl.click(function () {
clearTimeout(forceTimeout);
if (isPlaying) {
isPlaying = false;
wasPausedByUser = true;
forcedByUser = false;
stopRotation();
} else {
isPlaying = true;
wasPausedByUser = false;
forcedByUser = true;
startRotation(true);
forceTimeout = setTimeout(function() {
forcedByUser = false;
if (isUserInteracting && isPlaying) {
stopRotation();
}
}, 2000);
}
updateRotationControl();
});
$rotationControl.on('keydown', function(e) {
if (e.key === 'Enter' || e.key === ' ') {
e.preventDefault();
$(this).click();
}
});
$indicators.on('click', function() {
var index = $(this).data('slide-to');
if (isAnimating) {
return;
}
// Ensure manual navigation is announced
$textboxWrapper.attr('aria-live', 'polite');
if (wasPausedByUser) {
isPlaying = true;
startRotation();
updateSlide(index, true); // true = user action
setTimeout(function() {
isPlaying = false;
stopRotation();
}, 600);
} else {
updateSlide(index, true); // true = user action
}
$(this).focus();
});
$indicators.on('keydown', function(e) {
var currentIndex = $(this).data('slide-to');
var nextIndex;
switch(e.key) {
case 'ArrowRight':
e.preventDefault();
nextIndex = (currentIndex + 1) % totalSlides;
break;
case 'ArrowLeft':
e.preventDefault();
nextIndex = (currentIndex - 1 + totalSlides) % totalSlides;
break;
case 'Home':
e.preventDefault();
nextIndex = 0;
break;
case 'End':
e.preventDefault();
nextIndex = totalSlides - 1;
break;
default:
return;
}
if (nextIndex !== undefined && !isAnimating) {
// Ensure manual navigation is announced
$textboxWrapper.attr('aria-live', 'polite');
if (wasPausedByUser) {
isPlaying = true;
startRotation();
updateSlide(nextIndex, true); // true = user action
$indicators.eq(nextIndex).focus();
setTimeout(function() {
isPlaying = false;
stopRotation();
}, 600);
} else {
updateSlide(nextIndex, true); // true = user action
$indicators.eq(nextIndex).focus();
}
}
});
init();
});
Ausbildungsevaluierung 2026
Seit Anfang März bewerten Ärzt*innen in Ausbildung in ganz Österreich, so auch in Wien, ihre Ausbildungsstätten und leisten damit einen wichtigen Beitrag zur kontinuierlichen Verbesserung der Ausbildungsqualität und zur Weiterentwicklung der ärztlichen Ausbildung.
Weitere Informationen unter anderem auch auf docWiki
„Ärzt*in für Wien 03/26“ online – Karriere trotz Hürden
Wie es Wiens Ärztinnen im Arbeitsalltag geht – wir haben nachgefragt. Darüber und viele weitere interessante Berichte können Sie jetzt schon online in der aktuellen Ausgabe von Ärzt*in für Wien lesen.
Mehr
Impfungen sind aus gutem Grund eine ärztliche Leistung
Die von der Regierung angekündigte Maßnahme, Impfungen in Apotheken zu ermöglichen, sehen wir äußerst kritisch. Patientensicherheit muss immer oberste Priorität haben!
Mehr
Hindernisse und Herausforderungen für Frauen in der Medizin
Die Kammer für Ärztinnen und Ärzte in Wien präsentiert die Ergebnisse einer aktuellen Umfrage zu Karrierechancen, Zufriedenheit und strukturellen Benachteiligungen von Ärztinnen.
Zur Pressekonferenz
Future Talk: Zwischen Visite und Vision
Beim Future Talk diskutierten Zukunftsforscher Tristan Horx und Reproduktionsmediziner Heinz Strohmer über gesellschaftlichen Wandel, technologische Innovationen und den Einfluss von KI auf das ärztliche Berufsbild.
Zu den Fotos
Wiener Medizinischer Kongress
Der erste Wiener Medizinische Kongress bietet ein abwechslungsreiches Kongresserlebnis in Wien. An 3 Tagen werden verschiedene Fachgebiete abgedeckt. Bei diversen Workshops kann man sein Wissen praktisch anwenden.
Mehr Informationen
Aktuelle Informationen
Ärzt*innen News (26. März 2026)
Kammer ruft zur FSME-Impfung auf / Neuer Zugangslink zum BBG e-Impfshop
Mehr lesen...Start in die Zeckensaison: Viele Wienerinnen und Wiener haben keinen aufrechten FSME-Impfschutz
Kammer für Ärztinnen und Ärzte in Wien rät zu rechtzeitiger Auffrischung und setzt sich für Gratis-Impfstoff ein
Mehr lesen...|
„Ärzt*in für Wien 03/26“ online – Karriere trotz HürdenWie es Wiens Ärztinnen im Arbeitsalltag geht – wir haben nachgefragt. Darüber und viele weitere interessante Berichte können Sie jetzt schon online in der aktuellen Ausgabe von Ärzt*in für Wien lesen.
|
| Kontakt Tel: +43 1 51501-0 Fax: +43 1 51501-1209 Kontaktformular |
Öffnungszeiten |