Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Linkin klikkaamisesta monta toimintoa

Sivun loppuun

lakeus [03.03.2012 23:22:08]

#

Webbisivullani on linkki, josta klikkaamalla pitäisi tapahtua kaksi asiaa:
1) Ladataan tiedosto setup.exe
2) Siirrytään uudelle sivulle help.html

Olen yrittänyt erilaisia netistä löytyviä Javascript-esimerkkejä huonolla menestyksellä. En tiedä tarvitaanko edes Javascriptiä vai onnistuuko haluamani suoraan HTML:n avulla. Voisiko joku postata toimivan esimerkin, kysymys lienee helppo webbisivuja enemmän tehneille?

Synomi [04.03.2012 00:25:35]

#

Voit tehdä sen sillä tavalla, kun help.html sivu avataan, niin aloitetaan tuon setup.exen lataus automaatisesti parin sekunnin kuluttua eli voit joko suoraan laittaa help.html sivulle:

<script type='text/javascript'>
function lahetaSetup()
{
window.location.href = "http://www.example.com/files/setup.exe";
}
setTimeout("lahetaSetup()",3000);

</script>

Tai sitten vaatia jonkun url parametrin kuten 'help.html?file=setup.exe'. Tällöin vastava olisi:

<script type='text/javascript'>
function getUrlVars()
{
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

function lahetaSetup()
{
window.location.href = "http://www.example.com/files/setup.exe";
}
var urlparams = getUrlVars();
if (urlparams['file']=='setup.exe')
	setTimeout("lahetaSetup()",3000);

</script>

Cornix [04.03.2012 00:46:34]

#

Huomaa, että edellä esitetty JavaScript ei toimi, jos käyttäjällä ei ole JS päällä selaimessaan. Sitä varten on hyvä kirjoittaa linkki vielä tekstinäkin ohjesivun alkuun.

Eikö pelkkä linkki ohjeen alussa riittäisi? Jos tavoitteena on saada kaikki käyttäjät edes vilkaisemaan ohjetta, eikö olisi järkevämpää upottaa latauslinkki itse ohjeeseen?

-tossu- [04.03.2012 00:50:47]

#

Ilman JavaScriptiä sama onnistuu vaikka meta refreshillä.

<meta http-equiv="refresh" content="3; url=http://example.com/files/setup.exe">

Tuollaisen järkevyydestä millä tahansa tekniikalla toteutettuna voidaan olla montaa mieltä. Itse en pidä turhista kiitos latauksesta -sivuista enkä siitä, että asiapitoinen sivu tyrkyttää tiedostoa ladattavaksi.

lakeus [04.03.2012 10:23:28]

#

Kiitos vastauksista, kokeilen noita pikimmiten ja kerron onnistuiko homma.

Linkin klikkaamisesta seurasi aiemmin pelkän tiedoston lataus. Nyt on ladattavana myös hankalakäyttöisempi beta-versio, haluaisin käyttäjien edes vilkaisevan ohjeita ennen kuin he alkavat kyselemään sähköpostilla. Näin ollen sivu ei toivottavasti ole aivan turha käyttäjille.

Sivusto käyttää muutenkin niin paljon JavasScriptiä ettei se edes toimi kunnolla jos JS on pois päältä. Tähän mennessä en ole kuullut JavaScript-vaatimuksesta yhtään valitusta vajaalta miljoonalta kävijältä joten JavaScript on ja pysyy.

Petja [04.03.2012 17:33:28]

#

-tossu-:n esimerkin voi toteuttaa myös PHP:llä, mikäli sellainen sinulla on käytettävissä.

header("Refresh: 3; url=http://example.com/files/setup.exe");

Mutta asiasta toiseen; haluaisin toki tietää mikä projekti sinulla on käynnissä, kun sinulla on vajaa miljoona käyttäjää sillä.

lakeus kirjoitti:

Tähän mennessä en ole kuullut JavaScript-vaatimuksesta yhtään valitusta vajaalta miljoonalta kävijältä joten JavaScript on ja pysyy.

lakeus [06.03.2012 21:28:42]

#

Petja kirjoitti:

Mutta asiasta toiseen; haluaisin toki tietää mikä projekti sinulla on käynnissä, kun sinulla on vajaa miljoona käyttäjää sillä.

Projekti on kännykkäsofta, jolle teen siis myös tukisivut. Tarkkaa sovellusta on taida tässä yhteydessä paljastaa, mutta se toimii puhelimen ja PC:n välillä joten käyttäjien tulee myös asentaa tekemäni Windows-sovellus. Niin ja käyttäjiä ilmaisversiolle on noin 1,3 miljoonaa, mutta maksavia käyttäjiä on valitettavasti vain viisinumeroinen määrä.

Off-topic. Putkaa sivusilmällä seuranneena ihmetyttää miksi täällä keskustellaan niin vähän mobiilisovellusten teosta. Ne ovat useasti PC-sovelluksia pienitöisempiä ja myös jakelu sekä ansaitseminen ovat hyvin järjestetty.

mylvari [09.03.2012 18:33:07]

#

lakeus kirjoitti:

Off-topic. Putkaa sivusilmällä seuranneena ihmetyttää miksi täällä keskustellaan niin vähän mobiilisovellusten teosta. Ne ovat useasti PC-sovelluksia pienitöisempiä ja myös jakelu sekä ansaitseminen ovat hyvin järjestetty.

Ehkäpä voisit avittaa kiinnostusta mobiilisovellusten tekemiseen jonkinlaisella opassarjalla. Mitä pitää ottaa huomioon, millaisia erilaisia vaihtoehtoja on ohjelmointikielten ja kirjastojen suhteen erilaisille mobiilialustoille jne.

Grez [09.03.2012 20:47:51]

#

Mielestäni mobiilisovellukset ei saman toiminnallisuuden toteuttavina ole yhtään pienitöisempiä kuin PC-sovellus. Tietty se ero on, että mobiilisovellukset on yleensä toiminnallisuudeltaan rajoitetumpia kuin PC-sovellukset, jolloin myös toteutettavaa on vähemmän.

neau33 [09.03.2012 20:59:18]

#

Moi lakeus!

Mikäli help sivusi on tarkoitus ohjeistaa asennettavan ohjelman käyttöä niin pistä se asennusohjelmasi avaamaan ko. sivua kun asennus on suoritettu.

Jos taas help sivusi on tarkoitus ohjeistaa itse asentamista niin ei ole mitään järkeä iskeä ohjeistusta ja latauslinkkiä eri sivuille.

Mutta jos se kuitenkin noin halutaan suorittaa niin...

<!--index.html-->
<html>
<head></head>
    <body>
        <a href="help.html?setup.exe">lataa</a>
    </body>
</html>
<!--help.html-->
<html><head><title>Apuva</title>
</head>
    <body onload="if(location.href.indexOf('setup.exe')>-1){location.href='setup.exe';}">
        <noscript>
                <p>Lataus epäonnistui...</p>
                <a href="setup.exe">lataa</a>
        </noscript>
        <p>Vaikka tämä on help sivu niin</p>
        <p>mitään apuva ei ole tarjolla...</p>
    </body>
</html>

testaa


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta