Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Про картинку в качестве фона (https://javascript.ru/forum/dom-window/36221-pro-kartinku-v-kachestve-fona.html)

Ahterknica 07.03.2013 23:12

Про картинку в качестве фона
 
Ребят, подскажите, можно ли задать такую зависимость:
есть картинка-фотография фоном. Я хочу, чтобы она занимала все окно, но не меняла пропорций при этом.
Мне кажется, что самый удобный вариант будет таким: если картинка пропорционально длиннее, чем экран, то её кусок справа просто не отображается, как бы обрезается. и полоса прокрутки при это не появляется
если картинка выше при стопроцентной ширине, то обрезается в высоту, опять же без прокрутки.
Так делают?

Ahterknica 08.03.2013 00:00

В общем, я даже нашла, что нужно получить.
Но не могу соединить.
У меня есть такой код для страницы:
<script type="text/javascript">
var i , t,
    b;
var speed = 6000
var Pic = ['image/img_1.jpg',
'image/img_2.jpg',
'image/img_3.jpg',
'image/img_4.jpg']
var j = 0
var p = Pic.length
for (i = 0; i < p; i++){
   var preLoad = new Image()
   preLoad.src = Pic[i]
   Pic[i] = preLoad
}
function get(a) {
    var c = document,
        d = c.body,
        e = c.documentElement,
        f = "client" + a;
    a = "scroll" + a;
    return c.compatMode === "CSS1Compat" ? Math.max(e[f], e[a]) : Math.max(d[f], d[a])
}
window.onload = fon;
i = new Image;
function fon() {
    window.clearTimeout(t);
    j++
    j %= p
    i.src = Pic[j].src;
    i.style.position = "absolute";
    i.style.left = "0px";
    i.style.top = "0px";
    i.style.height = get("Height") + "px";
    i.style.zIndex = -999;
    i.id="img"
    document.body.appendChild(i)
    t = setTimeout(fon, speed)
}
window.onresize = function () {
   var i = document.getElementById("img");
   if(i) document.body.removeChild(i);
    window.clearTimeout(b);
    b = window.setTimeout(function () {
        fon()
    }, 20)
};
</script>


и есть вот такая штука, которая как раз и делает, то что мне нужно:

<img src="images/bg.jpg" id="bg" alt="">

#bg { position: fixed; top: 0; left: 0; }
.bgwidth { width: 100%; }
.bgheight { height: 100%; }


$(window).load(function() {    
 
        var theWindow        = $(window),
            $bg              = $("#bg"),
            aspectRatio      = $bg.width() / $bg.height();
 
        function resizeBg() {
 
                if ( (theWindow.width() / theWindow.height()) < aspectRatio ) {
                    $bg
                        .removeClass()
                        .addClass('bgheight');
                } else {
                    $bg
                        .removeClass()
                        .addClass('bgwidth');
                }
 
        }
 
        theWindow.resize(function() {
                resizeBg();
        }).trigger("resize");
 
});


как мне их совместить? чтобы функция второго скрипта применялась к переменным первого. Чтобы эти вот меняющиеся картинки растягивались согласно скрипту номер два.

Aetae 08.03.2013 02:53

С обрезанием это элементарнейший вариант. Делается это без всякого js:
<!DOCTYPE HTML>
<html lang="ru-RU">
<head>
	<meta charset="UTF-8">
	<style type="text/css">
	* {
		margin: 0; padding:0;
	}
	
	html, body {
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	
	img {
		min-width: 100%;
		min-height: 100%;
	}
	</style>
</head>
<body>
	<img src="http://www.deviantart.com/download/358128988/new_visitor_by_maxdamagetorture-d5x7y3g.jpg"/>
</body>
</html>

danik.js 08.03.2013 04:56

Кажется я этот [говно]код (#2) где-то уже видел. Где вы его взяли?

Ahterknica 11.03.2013 15:55

Цитата:

Сообщение от Aetae
С обрезанием это элементарнейший вариант. Делается это без всякого js:

блин, все так просто.
Спасибо.

Uladzimir 11.03.2013 18:17

Всем доброго дня! Сразу оговорюсь, что я в программировании НОЛЬ!
нужна помощь!

<script language="JavaScript" type="text/javascript">
//<![CDATA[
<!--
window.open("http:.........com", "Name","location=1, toolbar=0, directories=0, menubar=0, scrollbars=0, resizable=0, width=500, height=700");
//-->
//]]>
</script>


Вопрос! Можно ли, если да то где, и что нужно вставить, чтобы появилась полоса прокрутки (боковая) сверху вниз.
Заранее спасибо!

danik.js 11.03.2013 18:42

Uladzimir, а где картинка?

Uladzimir 11.03.2013 18:48

Это не картинка, а ссылка на вот это http://scores.betrescue.com/golf/

danik.js 11.03.2013 18:55

Тогда как твой вопрос связан с текущей темой ("Про картинку в качестве фона") ?

Uladzimir 11.03.2013 19:10

Конкретно темы только о прокрутке я не нашёл, перенаправьте пожалуйста и я там оставлю свой пост
сори что не в тему!
Просто устал искать.


Часовой пояс GMT +3, время: 18:17.