Για παράδειγμα, με τη χρήση τού εξής:
<a href="image567.jpg">Image 567</a>
όταν ο χρήστης κάνει κλικ στο λινκ, ο browser τού απεικονίζει το image στο ίδιο παράθυρο.
Θα ήθελα το κλικ σε link τέτοιου τύπου να ανοίγει το default application (να κάνει δηλαδή "download" το αρχείο και να το ανοίγει με την κατάλληλη εφαρμογή - έστω και ρωτώντας Open ή Save).
Σημειώνω ότι τα αρχεία HTML και JPG δεν τα σερβίρει κάποιος ...σέρβερ, αλλά είναι τοπικά - δηλαδή ο χρήστης δουλεύει με ένα index.html στον υπολογιστή του, αρα δεν μπορώ να χρησιμοποιήσω την αντίστοιχη δυνατότητα πχ του Apache.
Η εφαρμογή -που φτιάχνει ένας φίλος μου- θα μπορούσε να αρκεστεί σε απλή προβολή της εικόνας στον browser κατα τη γνώμη μου, αλλά αυτός (ο φίλος μου) θέλει σώνει και ντε (ή σώνει και καλά) (ή καλά και σώνει) (κτλ) να προβάλλει τις εικόνες με κάποιο εξειδικευμένο picture viewer για να προσθέσει δυνατότητες zooming κλπ.
Λύσεις με Javascript απολύτως δεκτές.
Δεκτή επίσης και μια απάντηση, ότι "αυτό δεν γίνεται"...
Ευχαριστώ για τον χρόνο σας!
Εμφάνιση 1-6 από 6
-
21-04-06, 19:16 HTML Quiz: <a href="...">: Όταν το target είναι .jpg να γίνεται download και όχι view #1/* no comment */
-
29-04-06, 15:29 #2
Απ'όσο γνωρίζω, server side γίνεται σχετικά εύκολα με αρκετούς τρόπους που σχετίζονται με customization των HTTP response headers είτε on demand είτε -κεντρικά- από τα MIME settings του server.
Ωστόσο, μια και δεν υπάρχει server όπως λες, αλλά στατικές σελίδες (κάποιο CD ή κάποιο file server based Intranet να υποθέσω?), τα πράγματα είναι λίγο πιο περίπλοκα μια και out of the box, straightforward client-side λύση (σε JavaScript λ.χ.) δεν έχω βρει έως τώρα... Ωστόσο, μπορείς να ρίξεις μια ματιά σε αυτό το workaround... (και γενικότερα, Google is your friend!)
Γενικότερα, πάντως, νομίζω πως αυτό που ζητάς είναι κάτι που θεωρητικά θα μπορούσες να το ελέγξεις client side από τα MIME types που διαχειρίζεται ο browser -αν φυσικά είχες ελεύθερη πρόσβαση να "πειράξεις" τα browser settings στα συγκεριμένα μηχανάκια που θα "τρέχουν" τις σελίδες σου...
Ο Netscape και ο Opera λ.χ. δίνουν αυτή τη δυνατότητα customization των MIME types σε client side (!) όπως μπορείς να δεις στα παρακάτω screenshots:
Ωστόσο, απ'ο,τι ξέρω ούτε ο IE ούτε ο FF έχουν τη δυνατότητα αυτή. Στο Fiirefox μόνο edit τα υπάρχοντα μπορείς να κάνεις:
Δεν ξέρω βέβαια εάν υπάρχει κάποιο extension που να το κάνει αυτό (πάντως, έχω βρει ανάλογο για PDF files)
Ελπίζω να βρεις τελικά κάποια άκρη, και να μας κάνεις κοινωνούς της λύσης επίσης... (U never know πότε θα χρειαστούμε κι άλλοι κάτι ανάλογο)
______________________________
Update: Μια εναλλακτική λύση που σκέφτηκα τώρα, είναι η μετατροπή των εικόνων σε ένα format που δεν το διαχειρίζεται αυτόματα ο browser απεικονίζοντάς τo inline (όπως κάνει π.χ. με τα JPEG, GIF, PNG και -νομίζω- τα BMP) αλλά που το κάνει "πάσα" σε εξωτερική εφαρμογή όπως ακριβώς το ζητάς!Τελευταία επεξεργασία από το μέλος Frealaf : 29-04-06 στις 15:50.
-
29-04-06, 16:22 #3
-
29-04-06, 17:26 #4
Πω πωωωω!! Πολύ εμπεριστατωμένη απάντηση φίλε Frealaf!!!
Περιττό, λοιπόν, να σου πω, πως ευχαριστώ πολύ!
Το customization στα options του browser δεν το θέλαμε, καθώς -όπως φαντάστηκες- η "εφαρμογή" θα παίζει σε CD και δεν θα έχουμε πρόσβαση στο pc του τελικού χρήστη.. Και θα θέλαμε να μην μπλέκει με settings για διάφορους browsers...
(Πάντως πολύ χρήσιμη η πληροφορία για τα MIME types)
Τι κάναμε, λοιπόν, και δουλεύει ψιλο-τζιτζι - που λένε...
Καταρχήν χρησιμοποιήσαμε μια εφαρμογή που λέγεται WebExe (*) και ενσωματώνει σε ένα application έναν browser μαζί με τα html μας.
Mε ένα απλό scriptάκι, φτιάξαμε για κάθε .jpg ένα .bat αρχείο, στο οποίο μέσα υπάρχει απλά η εντολή:
start "window-title" actual_image.jpg
και στα <a href="..."> του html μας, βάζουμε το .bat σαν target. Οπότε τώρα το κλικ σε κάθε λινκ, τρέχει το .bat το οποίο κάνει start το .jpg
Είναι λίγο μπακάλικο, αλλά νομίζω ότι ολόκληρη η πληροφορική έχει μια τέτοια ιδιότητα...
(*) Η χρήση του WebExe είναι προαιρετική, αλλά μας γλιτώνει από το dialog box που οι διάφοροι browsers ανοίγουν και σε ρωτούν "Open" ή "Save" το αρχείο .bat. Ο browser του WebExe δεν σε ρωτά - το τρέχει κατ' ευθείαν.
Αυτό κάναμε και δουλεύει...
Ευχαριστούμε και πάλι για τον χρόνο σου και για τη διάθεση! Σίγουρα όσα μας είπες είναι μια χρήσιμη πληροφορία για μελλοντική χρήση.
Νά' σαι καλά!
---------------------
Προς msid
Θέλουμε να γίνεται "Open" το .jpg αρχείο με την default εξωτερική εφαρμογή, επιλογή που το μενού του right-click δεν διαθέτει.../* no comment */
-
13-05-06, 17:35 #5
Αυτό το ζήτημα το είχα αντιμετωπίσει όταν σε ένα site όπου έμπαιναν χρήστες για να κατεβάσουν αρχεία τύπου video (wmv, mov, avi κτλ) έπρεπε αν κάνουμε ένα "force download", δηλ να μην επιτρέπουμε στον browser να προσπαθήσει να παίξει το αρχείο αλλά να κάνει raise αυτόματα ένα download prompt. Η λύση που δόθηκε ηταν η παρακάτω:
<a href="file.php?file=<? echo $filename;?>" target="fileframe">Click to download file</a>
όπου καλείται η σελίδα file.php σε ένα iframe στην ίδια σελίδα με παράμετρο το όνομα του αρχείου
<iframe name="fileframe" height="0" width="0" scrolling="no" src="" id="fileframe" frameborder="0"></iframe>
Και ο κώδικας της σελίδας file.php:
<?php
$filename=$_REQUEST['file'];
header('Content-type: application/wmv');
header('Content-type: application/mov');
header('Content-type: application/rmvb');
header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header('Content-Disposition: attachment; filename='.basename($filename));
readfile('download/'.$filename);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>File Download</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-7">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_callJS(jsStr) { //v2.0
return eval(jsStr)
}
//-->
</script>
</head>
<body onLoad="javascript:window.close(this);">
</body>
</html>
Κάθε σχόλιο δεκτό.
-
13-05-06, 23:39 #6
bikey77, ευχαριστώ για την απάντηση, και πράγματι είναι μια χρήσιμη τεχνική αυτή που περιέγραψες... Στην περίπτωσή μου (που δεν τρέχω το site με php σε κάποιον server, αλλά είναι απλά κάποια html αρχεία που τα ανοίγει ο browser απ' ευθείας) δεν βοηθάει, αλλά γενικά είναι μια ωραία τεχνική και καλά έκανες και την έβαλες, μήπως και βοηθήσει κάποιον στο μέλλον.
Γεια χαρά!/* no comment */
Παρόμοια Θέματα
-
JetSpeed 520+ και "κολλήματα" όταν δεν δουλεύει
Από LampisTs στο φόρουμ ADSL, VDSL, FTTH & Broadband Hardware, routers, modems, κλπΜηνύματα: 41Τελευταίο Μήνυμα: 13-06-08, 16:47 -
"Όταν η μουσική είναι σχεδόν δωρεάν γιατί κάποιοι συνεχίζουν και κατεβάζουν από P2P;"
Από nm96027 στο φόρουμ ΕιδήσειςΜηνύματα: 100Τελευταίο Μήνυμα: 14-03-08, 22:39 -
"Οχι Κύριε, αυτό που ζητάτε δεν γίνεται"
Από apkor στο φόρουμ Nova ADSLΜηνύματα: 16Τελευταίο Μήνυμα: 18-02-06, 13:22 -
Όταν δεν "τραβάει" το download,να μειώνω και το upload??
Από sadako στο φόρουμ BitTorrentΜηνύματα: 2Τελευταίο Μήνυμα: 28-11-05, 02:37
Bookmarks