Merhabalar. Bir nodeJS kodunu komut penceresinden;
node deneme.js ile çalıştırabiliyoruz. Örneğin;
use strict"; var fs = require("fs"); fs.readdir("deneme", function (ex, files) { if (ex) { console.log(ex); } else { console.log(files); } })
;
kodu ile bir klasördeki dosyaların isimlerini listeliyor.
Benim sorum, bu js dosyasını html dosyası içinden nasıl çalıştıracağız? Yani deneme.html yazınca tarayıcıda klasördeki dosya isimleri görünsün istiyorum.
O isimleri elde ettiğim zaman <img src ile resimleri görüntüleyeceğim. Amacım bu.
Hocam bu haliylehttp://127.0.0.1:2000 yazdığımda dosya isimlerini tarayıcıya yazıyor. Ancak ben dosya isimlerini bir dizide tutup, daha sonra random olarak bir kaç tanesini img etiketi ile görüntüleyeceğim. Bu nedenle bu dosya isimlerini html sayfasına nasıl gönderirim. Orada da java script içinde işlem yapmam lazım sanırım. Sonuçta kişi bu sayfayı görüntülerkenhttp://sddfsdfsdgf.com/oku.js değil, ....../oku.html olarak görüntüleyecek.
Aşağıdaki kod ile dediğim işi yaptım. Sayfa her yenilendiğinde, bir klasördeki 5 resim random alınıyor ve img ile gösteriliyor. Çok teşekkürler.
Son bir şey var. Ben bu resimlere nasıl link veririm. Ama şöyle olacak. Mesela resim dosyanın adı deneme1.jpg olsun. link:http://www.deneme1.com olacak. Yani link adresi resim adı olacak.
<html> <head> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script type="text/javascript"> // verilen diziyi karıştıran fonksiyon function shuffle(a) { var j, x, i; for (i = a.length; i; i--) { j = Math.floor(Math.random() * i); x = a[i - 1]; a[i - 1] = a[j]; a[j] = x; } return a; } </script> </head> <body> <script type="text/javascript"> $.ajax({ url: 'http://localhost:2000', crossDomain: true, }).done(function(data) { // node.js'den geri dönen cevabı diziye dönüştürüyorum data = data.split(','); data = shuffle(data); //$('#dizinIcerik').html(data.length); var uz=data.length-1; var resimler = new Array(uz); var x=0; do { var indis = Math.round(Math.random()*uz); //$('#dizinIcerik').html(indis); if(data[indis]!='Thumbs.db') { resimler[x]='firmalar/' + data[indis]; x=x+1; } } while(x<5); var myImg1 = $('#res1'); myImg1.attr('src', resimler[0]);
var myImg2 = $('#res2'); myImg2.attr('src', resimler[1]);
var myImg3 = $('#res3'); myImg3.attr('src', resimler[2]);
var myImg4 = $('#res4'); myImg4.attr('src', resimler[3]);
node deneme.js ile çalıştırabiliyoruz. Örneğin;
;
kodu ile bir klasördeki dosyaların isimlerini listeliyor.
Benim sorum, bu js dosyasını html dosyası içinden nasıl çalıştıracağız? Yani deneme.html yazınca tarayıcıda klasördeki dosya isimleri görünsün istiyorum.
O isimleri elde ettiğim zaman <img src ile resimleri görüntüleyeceğim. Amacım bu.