Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    problema scroll orizzontale galleria foto

    Salve il mio è un problema che a molti potrà sembrare una banalità..ho creato una galleria immagini con scroll orizzontale e cercavo uno script java che mi aprisse la foto in grande..ho trovato questo script che mi apre la foto sempre nello stesso punto e cioè all'inizio della pagina...cioè scrollando in orizzontale arrivo alla foto 7-8-9- ecc ecc clicco ma mi si apre in un punto dove non la visualizzo..se invece provo lo script su una galleria con scroll verticale mi apre la foto in modo corretto..
    Come posso modificare questo codice in modo da far apparire la foto sempre anche scrollando orizzontalmente?

    codice:
    var thumbnailviewer={
    enableTitle: true, //Should "title" attribute of link be used as description?
    enableAnimation: true, //Enable fading animation?
    definefooter: '<div class="footerbar">CLOSE X</div>', //Define HTML for footer interface
    defineLoading: '[img]../funzioni/loading.gif[/img] Loading Image...', //Define HTML for "loading" div
    
    /////////////No need to edit beyond here/////////////////////////
    
    scrollbarwidth: 16,
    opacitystring: 'filter:progid:DXImageTransform.Microsoft.alpha(opacity=10); -moz-opacity: 0.1; opacity: 0.1',
    targetlinks:[], //Array to hold links with rel="thumbnail"
    
    createthumbBox:function(){
    //write out HTML for Image Thumbnail Viewer plus loading div
    document.write('<div id="thumbBox" onClick="thumbnailviewer.closeit()"><div id="thumbImage"></div>'+this.definefooter+'</div>')
    document.write('<div id="thumbLoading">'+this.defineLoading+'</div>')
    this.thumbBox=document.getElementById("thumbBox")
    this.thumbImage=document.getElementById("thumbImage") //Reference div that holds the shown image
    this.thumbLoading=document.getElementById("thumbLoading") //Reference "loading" div that will be shown while image is fetched
    this.standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body //create reference to common "body" across doctypes
    },
    
    
    centerDiv:function(divobj){ //Centers a div element on the page
    var ie=document.all && !window.opera
    var dom=document.getElementById
    var scroll_top=(ie)? this.standardbody.scrollTop : window.pageYOffset
    var scroll_left=(ie)? this.standardbody.scrollLeft : window.pageXOffset
    var docwidth=(ie)? this.standardbody.clientWidth : window.innerWidth-this.scrollbarwidth
    var docheight=(ie)? this.standardbody.clientHeight: window.innerHeight
    var docheightcomplete=(this.standardbody.offsetHeight>this.standardbody.scrollHeight)? this.standardbody.offsetHeight : this.standardbody.scrollHeight //Full scroll height of document
    var objwidth=divobj.offsetWidth //width of div element
    var objheight=divobj.offsetHeight //height of div element
    var topposition=(docheight>objheight)? scroll_top+docheight/2-objheight/2+"px" : scroll_top+10+"px" //Vertical position of div element: Either centered, or if element height larger than viewpoint height, 10px from top of viewpoint
    divobj.style.left=docwidth/2-objwidth/2+"px" //Center div element horizontally
    divobj.style.top=Math.floor(parseInt(topposition))+"px"
    divobj.style.visibility="visible"
    },
    
    showthumbBox:function(){ //Show ThumbBox div
    this.centerDiv(this.thumbBox)
    if (this.enableAnimation){ //If fading animation enabled
    this.currentopacity=0.1 //Starting opacity value
    this.opacitytimer=setInterval("thumbnailviewer.opacityanimation()", 20)
    }
    },
    
    
    loadimage:function(link){ //Load image function that gets attached to each link on the page with rel="thumbnail"
    if (this.thumbBox.style.visibility=="visible") //if thumbox is visible on the page already
    this.closeit() //Hide it first (not doing so causes triggers some positioning bug in Firefox
    var imageHTML='[img]'+link.getAttribute([/img]' //Construct HTML for shown image
    if (this.enableTitle && link.getAttribute("title")) //Use title attr of the link as description?
    imageHTML+='
    '+link.getAttribute("title")
    this.centerDiv(this.thumbLoading) //Center and display "loading" div while we set up the image to be shown
    this.thumbImage.innerHTML=imageHTML //Populate thumbImage div with shown image's HTML (while still hidden)
    this.featureImage=this.thumbImage.getElementsByTagName("img")[0] //Reference shown image itself
    this.featureImage.onload=function(){ //When target image has completely loaded
    thumbnailviewer.thumbLoading.style.visibility="hidden" //Hide "loading" div
    thumbnailviewer.showthumbBox() //Display "thumbbox" div to the world!
    }
    if (document.all && !window.createPopup) //Target IE5.0 browsers only. Address IE image cache not firing onload bug: panoramio.com/blog/onload-event/
    this.featureImage.src=link.getAttribute("href")
    this.featureImage.onerror=function(){ //If an error has occurred while loading the image to show
    thumbnailviewer.thumbLoading.style.visibility="hidden" //Hide "loading" div, game over
    }
    },
    
    setimgopacity:function(value){ //Sets the opacity of "thumbimage" div per the passed in value setting (0 to 1 and in between)
    var targetobject=this.featureImage
    if (targetobject.filters && targetobject.filters[0]){ //IE syntax
    if (typeof targetobject.filters[0].opacity=="number") //IE6
    targetobject.filters[0].opacity=value*100
    else //IE 5.5
    targetobject.style.filter="alpha(opacity="+value*100+")"
    }
    else if (typeof targetobject.style.MozOpacity!="undefined") //Old Mozilla syntax
    targetobject.style.MozOpacity=value
    else if (typeof targetobject.style.opacity!="undefined") //Standard opacity syntax
    targetobject.style.opacity=value
    else //Non of the above, stop opacity animation
    this.stopanimation()
    },
    
    opacityanimation:function(){ //Gradually increase opacity function
    this.setimgopacity(this.currentopacity)
    this.currentopacity+=0.1
    if (this.currentopacity>1)
    this.stopanimation()
    },
    
    stopanimation:function(){
    if (typeof this.opacitytimer!="undefined")
    clearInterval(this.opacitytimer)
    },
    
    
    closeit:function(){ //Close "thumbbox" div function
    this.stopanimation()
    this.thumbBox.style.visibility="hidden"
    this.thumbImage.innerHTML=""
    this.thumbBox.style.left="-2000px"
    this.thumbBox.style.top="-2000px"
    },
    
    cleanup:function(){ //Clean up routine on page unload
    this.thumbLoading=null
    if (this.featureImage) this.featureImage.onload=null
    this.featureImage=null
    this.thumbImage=null
    for (var i=0; i<this.targetlinks.length; i++)
    this.targetlinks[i].onclick=null
    this.thumbBox=null
    },
    
    dotask:function(target, functionref, tasktype){ //assign a function to execute to an event handler (ie: onunload)
    var tasktype=(window.addEventListener)? tasktype : "on"+tasktype
    if (target.addEventListener)
    target.addEventListener(tasktype, functionref, false)
    else if (target.attachEvent)
    target.attachEvent(tasktype, functionref)
    },
    
    init:function(){ //Initialize thumbnail viewer script by scanning page and attaching appropriate function to links with rel="thumbnail"
    if (!this.enableAnimation)
    this.opacitystring=""
    var pagelinks=document.getElementsByTagName("a")
    for (var i=0; i<pagelinks.length; i++){ //BEGIN FOR LOOP
    if (pagelinks[i].getAttribute("rel") && pagelinks[i].getAttribute("rel")=="thumbnail"){ //Begin if statement
    pagelinks[i].onclick=function(){
    thumbnailviewer.stopanimation() //Stop any currently running fade animation on "thumbbox" div before proceeding
    thumbnailviewer.loadimage(this) //Load image
    return false
    }
    this.targetlinks[this.targetlinks.length]=pagelinks[i] //store reference to target link
    } //end if statement
    } //END FOR LOOP
    //Reposition "thumbbox" div when page is resized
    this.dotask(window, function(){if (thumbnailviewer.thumbBox.style.visibility=="visible") thumbnailviewer.centerDiv(thumbnailviewer.thumbBox)}, "resize")
    
    
    } //END init() function
    
    }
    
    thumbnailviewer.createthumbBox() //Output HTML for the image thumbnail viewer
    thumbnailviewer.dotask(window, function(){thumbnailviewer.init()}, "load") //Initialize script on page load
    thumbnailviewer.dotask(window, function(){thumbnailviewer.cleanup()}, "unload")
    grazie a chiunque presterà attenzione al problema

  2. #2
    mi sa che nella fretta ho sbagliato sezione..andava in javascript questa discussione non in java....qualche moderatore può spostare...chiedo scusa per la distrazione....

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Originariamente inviato da activision84
    mi sa che nella fretta ho sbagliato sezione..andava in javascript questa discussione non in java....qualche moderatore può spostare...chiedo scusa per la distrazione....
    Sì, e magari andavano anche usati i tag CODE e, possibilmente, un briciolo di indentazione, altrimenti quella accozzaglia lì non la legge nessuno... io i tag li ho messi, per l'indentazione pazienza...

    Sistemo e sposto io.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    grazie e scusa ancora...

  5. #5

  6. #6
    Grazie della risposta ma quello che mi serve è una piccola modifica allo script che già ho...la mia galleria (non per mia scelta) va a scorrimento orizzontale verso destra e le foto sono di 500 px di altezza ..al click voglio che appaia la foto nelle dimensioni originali vicino la foto cliccata e non all'inizio della pagina.In verticale(su un'altra galleria) funziona. In orizzontale no...

  7. #7
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Il tuo script è un casino da guardare. Ti posso però dire come modificare uno di quelli che ti ho consigliato per lo scroll orizzontale. Prendi questo: https://developer.mozilla.org/@api/d...ed-gallery.zip e sostituisci il contenuto del file css-checked-gallery.html con questo codice:

    codice:
    <!doctype html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>CSS input:checked gallery example - MDN</title>
    <style type="text/css">
    #gallery-container {
    	position: relative;
    	width: 700px;
    	height: auto;
    	padding-top: 350px;
    	margin-left: auto;
    	margin-right: auto;
    	text-align: center;
    	border: 1px #aaaaaa solid;
    }
    
    img.gallery-fullsize {
    	position: absolute;
    	top: 15px;
    	left: 150px;
    	display: none;
    }
    
    div.gallery-item {
    	display: inline-block;
    }
    
    input.gallery-selector {
    	display: none;
    }
    
    label.gallery-label {
    	cursor: pointer;
    }
    
    input.gallery-selector:checked ~ img.gallery-fullsize {
    	display: block;
    }
    
    #gallery-scroll {
    	height: 100px;
    	width: auto;
    	overflow: auto;
    }
    
    #gallery-previews {
    	height: 75px;
    	width: 900px;
    }
    </style>
    </head>
    
    <body>
    <h1>CSS input:checked gallery</h1>
    <div id="gallery-container">
    	<div id="gallery-scroll">
    		<div id="gallery-previews">
    			<div class="gallery-item">
    				<label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" />
    				[img]images/1.jpg[/img]
    			</div>
    			<div class="gallery-item">
    				<label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" />
    				[img]images/2.jpg[/img]
    			</div>
    			<div class="gallery-item">
    				<label for="gallery-item3" class="gallery-label">[img]images/3s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="3.jpg" id="gallery-item3" />
    				[img]images/3.jpg[/img]
    			</div>
    			<div class="gallery-item">
    				<label for="gallery-item4" class="gallery-label">[img]images/4s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="4.jpg" id="gallery-item4" />
    				[img]images/4.jpg[/img]
    			</div>
    			
    			<div class="gallery-item">
    				<label for="gallery-item5" class="gallery-label">[img]images/1s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item5" />
    				[img]images/1.jpg[/img]
    			</div>
    			<div class="gallery-item">
    				<label for="gallery-item6" class="gallery-label">[img]images/2s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item6" />
    				[img]images/2.jpg[/img]
    			</div>
    			<div class="gallery-item">
    				<label for="gallery-item7" class="gallery-label">[img]images/3s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="3.jpg" id="gallery-item7" />
    				[img]images/3.jpg[/img]
    			</div>
    			<div class="gallery-item">
    				<label for="gallery-item8" class="gallery-label">[img]images/4s.jpg[/img]</label>
    				<input type="radio" name="gallery-list" class="gallery-selector" value="4.jpg" id="gallery-item8" />
    				[img]images/4.jpg[/img]
    			</div>
    		</div>
    	</div>
    </div>
    </body>
    </html>
    Altrimenti... buona fortuna

  8. #8
    Sostituisci sempre a quella pag. html il codice che posto e vedrai cosa intendo...è una gallery tipo questa postata, e come vedi con lo scroll, la foto in grande viene visualizzata sempre a sinistra e non dov'è la foto....come faccio a dire alla foto grande di posizionarsi sempre al centro della pagina anche scrollando tutto a destra?

    Grazie ancora per l'attenzione e la pazienza

    codice:
    <!doctype html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>CSS input:checked gallery example - MDN</title> <style type="text/css"> #gallery-container { position: relative; width: 700px; height: auto; padding-top: 350px; margin-left: auto; margin-right: auto; text-align: center; border: 1px #aaaaaa solid; } img.gallery-fullsize { position: absolute; top: 15px; left: 150px; display: none; } div.gallery-item { display: inline-block; } input.gallery-selector { display: none; } label.gallery-label { cursor: pointer; } input.gallery-selector:checked ~ img.gallery-fullsize { display: block; } #gallery-scroll { height: 100px; width: 3000px; overflow: auto; margin: 0; padding: 0; } #ciao { height: 75px; width: 3000px; margin: 0; padding: 0; } </style> </head> <body> <h1>CSS input:checked gallery</h1> <div id="gallery-scroll"> <div id="ciao"> <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item3" class="gallery-label">[img]images/3s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="3.jpg" id="gallery-item3" /> [img]images/3.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item4" class="gallery-label">[img]images/4s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="4.jpg" id="gallery-item4" /> [img]images/4.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item5" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item5" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item6" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item6" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item7" class="gallery-label">[img]images/3s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="3.jpg" id="gallery-item7" /> [img]images/3.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item8" class="gallery-label">[img]images/4s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="4.jpg" id="gallery-item8" /> [img]images/4.jpg[/img] <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item1" class="gallery-label">[img]images/1s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="1.jpg" id="gallery-item1" /> [img]images/1.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> <div class="gallery-item"> <label for="gallery-item2" class="gallery-label">[img]images/2s.jpg[/img]</label> <input type="radio" name="gallery-list" class="gallery-selector" value="2.jpg" id="gallery-item2" /> [img]images/2.jpg[/img] </div> </div> </div> </div> </div> </body> </html>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.