Difference between revisions of "MediaWiki:Common.js"

From Final Fantasy XIV Online Wiki
Jump to navigation Jump to search
Line 8: Line 8:


var isInViewport = function () {
var isInViewport = function () {
         console.log('version 0.6')
         console.log('version 0.8')
         var elem = document.getElementById("taboola-below-article-thumbnails")
         var elem = document.getElementById("taboola-below-article-thumbnails")
var distance = elem.getBoundingClientRect();
var distance = elem.getBoundingClientRect();
Line 22: Line 22:
     if (isInViewport()) {
     if (isInViewport()) {
         console.log('it is in viewport!')
         console.log('it is in viewport!')
        var fixed = $("#IL_INSEARCH");
        fixed.addClass('displaynone');
     } else {
     } else {
         console.log('it is not in viewport')
         console.log('it is not in viewport')
        var fixed = $("#IL_INSEARCH");
        fixed.removeClass('displaynone');
     }
     }
})
})


/*
/*
$(window).scroll(function () {
    console.log('scrolling')
    if (isInViewport($('#taboola-below-article-thumbnails'))) {
        console.log('it is in viewport!')
    } else {
        console.log('it is not in viewport')
    }
});
*/
window.addEventListener("load", function(){
window.addEventListener("load", function(){


Line 125: Line 119:
  }
  }
});
});
*/

Revision as of 02:28, 25 October 2020

/* Any JavaScript here will be loaded for all users on every page load. */

// Scripts to use when viewing articles
/* if (mw.config.get('wgIsArticle') || window.location.href.indexOf('action=submit') > -1 || mw.config.get('wgNamespaceNumber') == -1) {
    mw.loader.load( '/index.php?title=MediaWiki:CollapsibleTables.js&action=raw&ctype=text/javascript' );
}
*/

var isInViewport = function () {
        console.log('version 0.8')
        var elem = document.getElementById("taboola-below-article-thumbnails")
	var distance = elem.getBoundingClientRect();
        console.log('distance from top', distance.top)
        console.log('window.innerHeight', window.innerHeight)
	return (
		distance.top <= (window.innerHeight || document.documentElement.clientHeight)
	);
};

window.addEventListener("scroll", function(){
    console.log('scrolling')
    if (isInViewport()) {
        console.log('it is in viewport!')
        var fixed = $("#IL_INSEARCH");
        fixed.addClass('displaynone');
    } else {
        console.log('it is not in viewport')
        var fixed = $("#IL_INSEARCH");
        fixed.removeClass('displaynone');
    }
})

/*
window.addEventListener("load", function(){

 var positionAdDivs= function () {
  // console.log('version 2.7')

  var fixed = $("#IL_INSEARCH");
  
  var fixed_position = $("#IL_INSEARCH").offset().top;
  var fixed_height = $("#IL_INSEARCH").height();

  var toCross = $("#taboola-below-article-thumbnails")

  var toCross_position = $("#taboola-below-article-thumbnails").offset().top;
  var toCross_height = $("#taboola-below-article-thumbnails").height();
 
/*
  console.log('fixed_position', fixed_position)
  console.log('fixed_height', fixed_height)
  console.log('toCross_position', toCross_position)
  console.log('toCross_height', toCross_height)
*/


  if (fixed_position + fixed_height  < toCross_position) {
    // console.log('fixed_position', fixed_position)

  } else if (fixed_position > toCross_position + toCross_height) {
    console.log('remove displaynone class')

    console.log('fixed_position', fixed_position)
    console.log('fixed_height', fixed_height)
    console.log('toCross_position', toCross_position)
    console.log('toCross_height', toCross_height)

    fixed.removeClass('displaynone');
  } else {
    var fixed_classes = fixed.attr('class')
    if (fixed_classes.includes('displaynone')){
      console.log('already has displaynone class!', 'fixed_position', fixed_position)
    } else {
      console.log('add displaynone class!')

      console.log('fixed_position', fixed_position)
      console.log('fixed_height', fixed_height)
      console.log('toCross_position', toCross_position)
      console.log('toCross_height', toCross_height)

      fixed.addClass('displaynone');
    }
  }

  /*
  if (fixed_position + fixed_height  < toCross_position) {
    var fixed_classes = fixed.attr('class')
    console.log('fixed_classes', fixed_classes)

    if (fixed_classes.includes('displaynone')){
      console.log('remove displaynone class!')
      fixed.removeClass('displaynone')
    } else {
      console.log('already removed displaynone class')
    }
   
  } else {
    var fixed_classes = fixed.attr('class')
    console.log('fixed_classes', fixed_classes)
    
    if (fixed_classes.includes('displaynone')){
      console.log('already has displaynone class')
    } else {
      console.log('add displaynone class!')
      fixed.addClass('displaynone')
    }
  }
  */
  
 };


 // if fixed_position is Not found, do nothing
 if (!$("#IL_INSEARCH").offset()){
 
 // otherwise start the interval
 } else {
   setInterval(positionAdDivs, 200);
 }
});
*/