Получить максимальную ширину пикселя браузера в Javascript

//may be like that 
$otherArray = array();
while ($row = mysql_fetch_array($RS2)) {
    foreach ($row as $key => $value) {
        if (empty($value)) {
            $otherArray[$key] = "<null>";
        }
        otherArray[$key] = $value;
    }
    echo "serno=$otherArray[serno];";
    echo "date=$otherArray[date];";
    echo "time=$otherArray[time];";
    echo "nett=$otherArray[nett];";
    echo "amount=$otherArray[amt];";
    echo "\n";
}
1
задан Agamemnus 19 January 2019 в 23:47
поделиться

2 ответа

Хорошо, вот мое решение. Ожидание ответа об ошибке, но пока:

var adj = (window.screen.width == window.outerWidth) ? 0 : -15
var maxScreenWidth = window.innerWidth * (window.screen.width / (window.outerWidth + adj))
if (parseInt(maxScreenWidth) != maxScreenWidth) maxScreenWidth = window.screen.width
0
ответ дан Agamemnus 19 January 2019 в 23:47
поделиться

Если ваши индивидуальные решения работают для каждого браузера, о котором вы упомянули, вы можете просто попытаться обнаружить браузер по строке пользовательского агента и применить правильную технику для этого условия. Конечно, пользователи могут изменять строки своих пользовательских агентов, но это может работать для ваших целей.

let isChrome = !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime);
let isEdge = !isIE && !!window.StyleMedia;
let isFirefox = typeof InstallTrigger !== "undefined";
let isIE = /*@cc_on!@*/false || !!document.documentMode;
let isSafari = /constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window['safari'] || (typeof safari !== 'undefined' && safari.pushNotification));

if (isChrome) {
    let adj = (window.screen.width == window.outerWidth) ? 0 : -15;
    let maxScreenWidth = document.body.getBoundingClientRect().width * (window.screen.width / (window.outerWidth + adj));
} else if (isIE || isEdge) {
    let adj = (window.screen.width == window.outerWidth) ? 0 : -18
    let maxScreenWidth = document.body.getBoundingClientRect().width * (window.screen.width / (window.outerWidth + adj));
} else if (isFirefox) {
    let maxScreenWidth = window.screen.width;
} else {
    // Some default
}

Или оберните это в функцию, которую вы можете вызвать и просто вернуть maxScreenWidth из нее.

0
ответ дан AndroidNoobie 19 January 2019 в 23:47
поделиться