fix: equipment tooltip now fits within a viewport

This commit is contained in:
reschan 2021-10-18 15:58:56 +07:00
parent 07276f639e
commit 93f73db9b2

30
sq2.js
View file

@ -76,7 +76,7 @@ $(document).ready(function(){
} }
}); });
// set search style // set listeners/checks
$("#weapon-choice").on('input', function(){ $("#weapon-choice").on('input', function(){
setTimeout(function() { setTimeout(function() {
set_input_style('weapon'); set_input_style('weapon');
@ -222,61 +222,70 @@ $(document).ready(function(){
// item tooltip // item tooltip
init_tooltip_loc()
$("#weapon-img-loc").hover(function(event){ $("#weapon-img-loc").hover(function(event){
$("#weapon-tooltip").show(); $("#weapon-tooltip").show();
init_tooltip_loc('weapon');
}, function(){ }, function(){
$("#weapon-tooltip").hide(); $("#weapon-tooltip").hide();
}); });
$("#helmet-img-loc").hover(function(event){ $("#helmet-img-loc").hover(function(event){
$("#helmet-tooltip").show(); $("#helmet-tooltip").show();
init_tooltip_loc('helmet');
}, function(){ }, function(){
$("#helmet-tooltip").hide(); $("#helmet-tooltip").hide();
}); });
$("#chestplate-img-loc").hover(function(event){ $("#chestplate-img-loc").hover(function(event){
$("#chestplate-tooltip").show(); $("#chestplate-tooltip").show();
init_tooltip_loc('chestplate');
}, function(){ }, function(){
$("#chestplate-tooltip").hide(); $("#chestplate-tooltip").hide();
}); });
$("#leggings-img-loc").hover(function(event){ $("#leggings-img-loc").hover(function(event){
$("#leggings-tooltip").show(); $("#leggings-tooltip").show();
init_tooltip_loc('leggings');
}, function(){ }, function(){
$("#leggings-tooltip").hide(); $("#leggings-tooltip").hide();
}); });
$("#boots-img-loc").hover(function(event){ $("#boots-img-loc").hover(function(event){
$("#boots-tooltip").show(); $("#boots-tooltip").show();
init_tooltip_loc('boots');
}, function(){ }, function(){
$("#boots-tooltip").hide(); $("#boots-tooltip").hide();
}); });
$("#ring1-img-loc").hover(function(event){ $("#ring1-img-loc").hover(function(event){
$("#ring1-tooltip").show(); $("#ring1-tooltip").show();
init_tooltip_loc('ring1');
}, function(){ }, function(){
$("#ring1-tooltip").hide(); $("#ring1-tooltip").hide();
}); });
$("#ring2-img-loc").hover(function(event){ $("#ring2-img-loc").hover(function(event){
$("#ring2-tooltip").show(); $("#ring2-tooltip").show();
init_tooltip_loc('ring2');
}, function(){ }, function(){
$("#ring2-tooltip").hide(); $("#ring2-tooltip").hide();
}); });
$("#bracelet-img-loc").hover(function(event){ $("#bracelet-img-loc").hover(function(event){
$("#bracelet-tooltip").show(); $("#bracelet-tooltip").show();
init_tooltip_loc('bracelet');
}, function(){ }, function(){
$("#bracelet-tooltip").hide(); $("#bracelet-tooltip").hide();
}); });
$("#necklace-img-loc").hover(function(event){ $("#necklace-img-loc").hover(function(event){
$("#necklace-tooltip").show(); $("#necklace-tooltip").show();
init_tooltip_loc('necklace');
}, function(){ }, function(){
$("#necklace-tooltip").hide(); $("#necklace-tooltip").hide();
}); });
}); });
function set_input_style(type) { function set_input_style(type) {
@ -297,14 +306,21 @@ function check_item(name) {
} }
} }
function init_tooltip_loc(){ function check_powder(powders) {
for (const i in equipment_keys) { if (powders.length % 2 == 0) {
let ImgLoc = document.getElementById(equipment_keys[i]+'-img-loc').getBoundingClientRect();
$("#"+equipment_keys[i]+"-tooltip").css('top', ImgLoc.bottom);
$("#"+equipment_keys[i]+"-tooltip").css('left', ImgLoc.left);
} }
} }
function init_tooltip_loc(equipment){
let ImgLoc = document.getElementById(equipment+'-img-loc').getBoundingClientRect();
let tooltipRect = document.getElementById(equipment+"-tooltip").getBoundingClientRect();
let windowHeight = $(window).height()
$("#"+equipment+"-tooltip").css('top', Math.min(ImgLoc.top, windowHeight - (tooltipRect.bottom - tooltipRect.top)));
$("#"+equipment+"-tooltip").css('left', ImgLoc.right);
}
/* /*
document.getElementById(armorType+"-choice").addEventListener("change", (event) => { document.getElementById(armorType+"-choice").addEventListener("change", (event) => {