/* * general.js * General Functions * * www.anwalt-schulrecht-berlin.de * © 2014 Anreas Jakubietz Berlin * */ /* ================================================== Debugging ================================================== */ // www.getfirebug.com/logging // www.getfirebug.com/wiki/index.php/Console_API // Prevent Console.log Errors in IE (function() { if (!window.console) window.console = {}; // union of Chrome, FF, IE, and Safari console methods var m = ["log", "info", "warn", "error", "debug", "trace", "dir", "group", "groupCollapsed", "groupEnd", "time", "timeEnd", "profile", "profileEnd", "dirxml", "assert", "count", "markTimeline", "timeStamp", "clear"]; // define undefined methods as noops to prevent errors for (var i=0; i 1)) retina = true; } // iPad and iPhone var user_agent = navigator.userAgent.toLowerCase(); var ipad = user_agent.match(/iPad/i) != null; var iphone = (user_agent.match(/iPhone/i) != null) || (user_agent.match(/iPod/i) != null); if (ipad) iphone= false; var ipad_mini = ipad?1:0; if (screen.availWidth != 748 || screen.availHeight != 1024) ipad_mini = 0; // Width and Height var width = Math.min(window.innerWidth, window.outerWidth); var height = Math.min(window.innerHeight, window.outerHeight); var isTouch = (('ontouchstart' in window) || (navigator.msMaxTouchPoints > 0)); // Touch Support var ms_gesture = window.navigator && window.navigator.msPointerEnabled && window.MSGesture; var touch_support = (( "ontouchstart" in window ) || ms_gesture || window.DocumentTouch && document instanceof DocumentTouch); if(ipad==true || iphone==true) touch_support=true; // Smart Device var smart_device = (typeof window.orientation=='undefined')&&(touch_support==true)?false:true; $(document).ready(function () { /* ================================================== Email Address Spam Protection ================================================== */ // var email_address = "rajakubietz" + "@gmail" + ".com"; var email_address = "anwalt" + "@anwalt-schulrecht-berlin" + ".de"; // replace link to contact page by mailto link var email_str = '' + email_address + ''; $(".email_address").replaceWith(email_str); // replace description of link to contact page by eMail address (homepage) var email_form_str = '' + email_address + ''; $(".email_form").replaceWith(email_form_str ); $("#contact_box_email").removeAttr("id").addClass("contact_box_email"); // prevent showing two links to contact form if JavaScript disabled $(".noscript_hide").removeClass("noscript_hide"); /* ================================================== Accordion ================================================== */ // Accordion $('.toggle_container').hide(); $('.trigger').click( function () { var trig = $(this); if (trig.hasClass('trigger_active')) { trig.next('.toggle_container').slideToggle(200); trig.removeClass('trigger_active'); } else { $('.trigger_active').next('.toggle_container').slideToggle(200); $('.trigger_active').removeClass('trigger_active'); trig.next('.toggle_container').slideToggle(200); trig.addClass('trigger_active'); }; return false; }); /* ================================================== News ================================================== */ /* $('.news_more').hide(); // initially don't show details $('.news_more_open, .news_more_close').show(); // show open/close-links $('.news_teaser, .news_more').click( function () { var trig = $(this); if (trig.hasClass('news_active')) { trig.next('.news_more').slideToggle(200); trig.removeClass('news_active').addClass('news_inactive'); } else { $('.news_active').next('.news_more').slideToggle(200); $('.news_active').removeClass('news_active'); trig.next('.news_more').slideToggle(200); trig.addClass('news_active').removeClass('news_inactive'); }; $('.news_more_open').show(); // show news details $('.news_active .news_more_open').hide(); // hide news details return false; }); $('.news_teaser a, .news_more a').click( function () { window.location.href = $('.news_teaser a, .news_more a').attr('href'); return false; }); */ /* ================================================== Smooth Scroll ================================================== */ // To Top of Page $("a[href='#top']").click(function () { $("html, body").animate({ scrollTop : 0 }, "slow"); return false; }); $('a[href^=#]').on("click", function(e){ var href = $(this).attr("href"); $("html, body").animate({ scrollTop : $(href).offset().top }, "slow"); return false; }); // To Target function scrollToTarget(target) { var first_char = target.substring(0, 1); target = first_char!="#" && first_char!="." ? "#"+target : target; if (target=="top" || target=="#top" || target=="#" || target=="") { $("html, body").animate({ scrollTop : 0 }, "slow"); } else { $("html, body").animate({ scrollTop : $(target).offset().top }, "slow", function() { window.location.hash = target; } ); } // alert("Scrolled to " + target); return false; } /* ================================================== Scroll to Top ================================================== */ $('#uplink').css({'position':'fixed', 'bottom':'.2em', 'right':'0', 'padding-right':'.4em', 'z-index':'999'}); $('#uplink').hide(); $(window).scroll(function () { if($(this).scrollTop()>300) {$('#uplink').fadeIn();} else {$('#uplink').fadeOut();} }); /* ================================================== Save Referer Cookie for Contact Form Readout ================================================== */ var ref=document.referrer; var ref_host_name=ref.split('/')[2]; var host_name=document.location.hostname; var ref_cookie_name=ref_host_name==host_name?"internalreferer":"externalreferer"; // if (document.location.href.indexOf("kontakt.htm")==-1) $.cookie(ref_cookie_name,ref,{path:'/',expires:7}); // var current_page = document.location.href; // alert('Current Page: ' + current_page); // alert('Kontaktseite: ' + document.location.href.indexOf("kontakt.htm")); // alert('Referer: ' + ref); // alert('Referer Host Name: ' + ref_host_name); // alert('Host: ' + host_name); // alert('External Referer Cookie Content: ' + $.cookie("referer")); // alert('Internal Referer Cookie Content: ' + $.cookie("internalreferer")); /* ================================================== DSGVO Cookie Consent ================================================== */ if($.cookie('dsgvo_cookie')) { $('#dsgvo_wrapper').hide(); } else { $('#dsgvo_wrapper').css('visibility', 'visible'); $('#dsgvo_wrapper').slideUp(0).delay(600).slideDown(1000); // $('#dsgvo_wrapper').show(); } $('.dsgvo_reminder_closer').click(function() { $.cookie('dsgvo_cookie', 1); $('#dsgvo_wrapper').slideUp(); return false; }); /* ================================================== Touch Devices ================================================== */ var supports_touch = false; var deviceAgent = navigator.userAgent.toLowerCase(); var agentID = deviceAgent.match(/(iphone|ipod|ipad)/); // android, blackberry, opera mini, iemobile, windows phone, webos if(agentID) { // check for iOS device supports_touch = true; } else if('ontouchstart' in window) { // check for iOS & Android touch support supports_touch = true; } else if(window.navigator.msPointerEnabled) { // check for Windows touch support if(navigator.msMaxTouchPoints) supports_touch = true; } // supports_touch = true; // test if(supports_touch==true) $('abbr, acronym').css('border-bottom', 'none'); }); // end $(document).ready