Skip to content

Commit 0b0fbf4

Browse files
authored
Merge pull request sumn2u#15 from gnwx/main
Translated bom
2 parents fba4d52 + 6e824d1 commit 0b0fbf4

File tree

8 files changed

+283
-0
lines changed

8 files changed

+283
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
layout: editorial
3+
chapter: 16
4+
pageNumber: 79
5+
---
6+
7+
# Bölüm 16
8+
# Browser Object Model
9+
10+
Tarayıcı obje modeli (Browser Object Model), tarayıcı penceresi ile etkileşim kurmamızı sağlar. `window` objesi tarayıcının penceresini temsil eder ve tüm tarayıcılar tarafından desteklenir.
11+
12+
`window`, tarayıcı için varsayılan objedir, bu nedenle tüm fonksiyonları doğrudan çağırabiliriz.
13+
14+
```javascript
15+
window.alert("Welcome to Learn JavaScript");
16+
17+
alert("Welcome to Learn JavaScript")
18+
```
19+
20+
Benzer bir şekilde, history, screen, navigator, location gibi diğer özellikleri de window objesinin altında çağırabiliriz.
21+
22+
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
chapter: 16
3+
pageNumber: 84
4+
---
5+
# Çerezler 🍪
6+
7+
Çerezler, bir bilgisayarda depolanan ve tarayıcı tarafından erişilebilen bilgi parçacıklarıdır.
8+
9+
Web tarayıcısı ile sunucu arasındaki iletişim durumsuzdur, kendisinden önceki isteklerin bilgisini içermez yani her isteği bağımsız olarak işler. Kullanıcı bilgilerini depolamamız ve bu bilgileri tarayıcıya kullanılabilir hale getirmemiz gereken durumlar vardır. Bu gibi durumlarda çerezler aracılığıyla bilgi, gerektiğinde bilgisayardan alınabilir.
10+
Çerezler `name-value` (isim-değer) çifti olarak kaydedilir.
11+
12+
```javascript
13+
book = Learn Javascript
14+
```
15+
16+
17+
`document.cookie` özelliği, çerezleri oluşturmak, okumak ve silmek için kullanılır. Çerez oluşturmak oldukça kolaydır, sadece ismi ve değeri sağlamanız gerekmektedir.
18+
19+
```javascript
20+
document.cookie = "book=Learn Javacript";
21+
```
22+
23+
24+
Varsayılan olarak, bir tarayıcı kapatıldığında bir çerez silinir. Kalıcı olmasını sağlamak için son kullanma tarihini (UTC zaman diliminde) belirtmemiz gerekmektedir.
25+
26+
```javascript
27+
document.cookie = "book=Learn Javacript; expires=Fri, 08 Jan 2022 12:00:00 UTC";
28+
```
29+
30+
Çerezin hangi sayfa yoluna (*path*) ait olduğunu söylemek için bir parametre ekleyebiliriz. Varsayılan olarak, çerez şu anki sayfaya aittir.
31+
32+
```javascript
33+
document.cookie = "book=Learn Javacript; expires=Fri, 08 Jan 2022 12:00:00 UTC; path=/";
34+
```
35+
36+
İşte basit bir çerez örneği.
37+
38+
```javascript
39+
let cookies = document.cookie;
40+
// tüm çerezlere ulaşmanın basit bir yolu.
41+
42+
document.cookie = "book=Learn Javacript; expires=Fri, 08 Jan 2022 12:00:00 UTC; path=/";
43+
// çerez oluşturma
44+
```
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
chapter: 16
3+
pageNumber: 85
4+
description: History object manages the browser's history stack.
5+
---
6+
7+
# Geçmiş
8+
9+
Bir web tarayıcısını açtığımızda ve bir web sayfasında gezindiğimizde, geçmiş belleğinde yeni bir girdi oluşturur. Farklı sayfalarda gezinmeye devam ettikçe yeni girdiler geçmiş belleğine eklenir.
10+
11+
Geçmiş objesine erişmek için şunları kullanabiliriz:
12+
13+
```javascript
14+
window.history
15+
// veya
16+
history
17+
```
18+
19+
Farklı geçmiş verileri arasında gezinmek için **history** objesinin `go()`, `foward()` ve `back()` fonksiyonlarını kullanabiliriz.
20+
21+
1. **go\(\)**: Geçmiş belleğinin belirli URL'sinde gezinmek için kullanılır.
22+
23+
```javascript
24+
history.go(-1); // sayfayı geri taşır
25+
history.go(0); // şu anki sayfayı yeniler
26+
history.go(); // şu anki sayfayı yeniler
27+
history.go(1) // sayfayı ileri taşır
28+
```
29+
30+
> _**Note:**_ geçmiş belleğindeki geçerli sayfa konumu **0**'dır.
31+
32+
2. **back\(\)** : Geriye gitmek için `back()` fonksiyonu kullanılır.
33+
34+
```javascript
35+
history.back();
36+
```
37+
38+
3. **forward\(\)**: Tarayıcı geçmişindeki bir sonraki listeyi yükler. Tarayıcıdaki ileri düğmesine tıklamaya benzer.
39+
40+
```javascript
41+
history.forward();
42+
```
43+
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
chapter: 16
3+
pageNumber: 86
4+
---
5+
# Location
6+
7+
`location` objesi, belgenin geçerli (URL) konumunu almak için kullanılır ve konumunu manipüle etmek için farklı yöntemler sağlar. Geçerli konuma şu şekilde erişilebilir
8+
9+
```javascript
10+
window.location
11+
//veya
12+
document.location
13+
//veya
14+
location
15+
```
16+
17+
> _**Note**_: `window.location` ve `document.location` aynı konum objesine referans verir.
18+
19+
Aşağıdaki URL örneğini ele alalım ve `location` objesinin farklı özelliklerini inceleyelim
20+
21+
[`http://localhost:3000/js/index.html?type=listing&page=2#title`](http://localhost:8080/js/index.html?type=listing\&page=2#title)
22+
23+
```javascript
24+
location.href //mevcut URL'yi yazdırır.
25+
location.protocol //protokolleri yazdırır örn: http,https
26+
location.host //hostname'i port ile birlikte yazdırır örn: localhost:3000
27+
location.hostname //hostname'i yazdırır örn: localhost, www.example.com
28+
location.port //port numarasını yazdırır örn: 3000
29+
location.pathname //sayfa yolunu(*path*) yazdırır örn: /js/index.html
30+
location.search //sorgu dizelerini yazdırır örn: ?type=listing&page=2
31+
location.hash //title gibi bileşen tanımlayıcısını yazdırır
32+
```
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
chapter: 16
3+
pageNumber: 83
4+
---
5+
# Navigator
6+
7+
8+
`window.navigator` veya `navigator` özelliği salt okunur bir özelliktir ve tarayıcıyla ilgili çeşitli yöntem ve fonksiyonları içerir.
9+
10+
Birkaç örneğine bakalım:
11+
12+
1. **navigator.appName**: Tarayıcı uygulamasının adını verir
13+
14+
```javascript
15+
navigator.appName;
16+
// "Netscape"
17+
```
18+
19+
> _**Note:**_ "Netscape" IE11, Chrome, Firefox ve Safari için uygulama adıdır.
20+
2. **navigator.cookieEnabled**: Tarayıcıdaki çerez değerine bağlı olarak bir boolean değeri döndürür.
21+
22+
```javascript
23+
navigator.cookieEnabled;
24+
//true
25+
```
26+
3. **navigator.platform**: İşletim sistemi hakkında bilgi sağlar.
27+
28+
```javascript
29+
navigator.platform;
30+
"MacIntel"
31+
```
32+
33+
34+
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
chapter: 16
3+
pageNumber: 81
4+
---
5+
# Popup
6+
7+
Popups (Açık pencereler) bilgi göstermek, kullanıcı onayı almak veya ek belgelerden kullanıcı girişi almak için ek bir yoldur. Bir popup yeni bir URL'ye gidebilir ve açılan pencereye bilgi gönderebilir. **Uyarı kutusu** (*Alert box*), **Onay kutusu** (*Confirmation box*) ve **Girdi kutusu** (*Prompt box*) pop-up bilgilerini gösterebileceğimiz global fonksiyonlardır.
8+
9+
1. **alert()**: Kullanıcıya bilgi görüntüler ve devam etmek için bir "**OK**" butonu vardır.
10+
11+
```javascript
12+
alert("Örnek alert mesajı!");
13+
```
14+
2. **confirm()**: Bir şeyi onaylamak veya kabul etmek için bir etkileşim kutusu olarak kullanın. Devam etmek için "**Ok**" ve "**Cancel**" vardır. Kullanıcı "**Ok**" seçeneğine tıklarsa "true", "**Cancel**" seçeneğine tıklarsa "false" döndürür. 
15+
16+
```javascript
17+
let txt;
18+
if (confirm("Bir butona basın!")) {
19+
txt = "OK Butonuna bastınız!";
20+
} else {
21+
txt = "Cancel butonuna bastınız!";
22+
}
23+
```
24+
3. **prompt()**: "**Ok "** ve "**İptal "** düğmeleri ile kullanıcı girdi alır. Kullanıcı herhangi bir girdi değeri sağlamazsa `null` döndürür.
25+
26+
```javascript
27+
//syntax
28+
//window.prompt("sometext","defaultText");
29+
30+
let person = prompt("Lütfen adınızı girin", "Harry Potter");
31+
32+
if (person == null || person == "") {
33+
txt = "Kullanıcı prompt girmedi";
34+
} else {
35+
txt = "Merhaba " + person + "! Bugün nasılsınız?";
36+
}
37+
```
38+
39+
40+
41+
42+
43+
44+
45+
46+
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
chapter: 16
3+
pageNumber: 82
4+
---
5+
# Screen
6+
7+
`screen` objesi, geçerli pencerenin oluşturulduğu ekran hakkında bilgi içerir. `screen` objesine erişmek için `window` objesinin `screen` özelliğini kullanabiliriz.
8+
9+
```javascript
10+
window.screen
11+
//veya
12+
screen
13+
```
14+
15+
`window.screen` objesinin farklı özellikleri vardır, bunlardan bazıları aşağıda listelenmiştir:
16+
17+
| Property | Description |
18+
| :--- | :--- |
19+
| `height` | Ekranın piksel yüksekliğini temsil eder. |
20+
| `left` | Mevcut ekranın sol tarafının piksel mesafesini temsil eder. |
21+
| `pixelDepth` | Ekranın bit derinliğini döndüren salt okunur bir özelliktir. |
22+
| `top` | Mevcut ekranın üst kısmının piksel mesafesini temsil eder. |
23+
| `width` | Ekranın piksel genişliğini temsil eder. |
24+
| `orientation` | Ekran Oryantasyon API'sinde (*Screen Orientation API*) belirtildiği şekilde ekran oryantasyonunu döndürür |
25+
| `availTop` | Sistem öğeleri tarafından alınmayan üstteki ilk pikseli döndüren salt okunur bir özelliktir. |
26+
| `availWidth` | Sistem öğeleri hariç ekranın piksel genişliğini döndüren salt okunur bir özelliktir. |
27+
| `colorDepth` | Renkleri temsil etmek için kullanılan bit sayısını döndüren salt okunur bir özelliktir. |
28+
29+
30+
31+
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
chapter: 16
3+
pageNumber: 80
4+
---
5+
# Window
6+
7+
`window` objesi tarayıcı penceresini temsil eder ve tarayıcılar tarafından desteklenir. Global değişkenler, objeler ve fonksiyonlar da pencere objesinin bir parçasıdır.
8+
9+
10+
Global **değişkenler**, window objesinin **özellikleridir** ve **fonksiyonlar**, window objesinin **metodlarıdır**.
11+
12+
Ekran özelliklerine bir göz atalım. Bu özellikler tarayıcı penceresinin boyutunu belirlemek için kullanılır ve piksel cinsinden ölçülür.
13+
14+
* `window.innerHeight` - tarayıcı penceresinin iç yüksekliği
15+
* `window.innerWidth` - tarayıcı penceresinin iç genişliği
16+
17+
> _**Note**_: `window.document` ve `document.location` ifadeleri, (DOM) pencere objesinin bir parçası olduğu için aynı anlama gelir.
18+
19+
Pencere metodlarından birkaç örnek:
20+
21+
22+
* `window.open()` - yeni bir pencere açar
23+
* `window.close()` - mevcut pencereyi kapatır
24+
* `window.moveTo()` - mevcut pencereyi taşır
25+
* `window.resizeTo()` - şu anki pencereyi yeniden boyutlandır
26+
27+
28+
29+
30+
31+

0 commit comments

Comments
 (0)