<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<!------ Include the above in your HEAD tag ---------->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Strait">
<body>
<div class="container" style="font-family: 'Strait', sans-serif;">
<h2 class="text-center">Metni URL Formatına Çevir</h2>
<h4 class="text-center" id="sonuc">üçiİĞğ -> uciigg</h4>
<hr style="width:50%">
<div class="form-group">
<label for="inputText">Metin Girin:</label>
<input type="text" class="form-control input-lg" id="inputText" placeholder="Metni buraya yazın">
<small class="text-muted">Karakter Sayısı: <span id="charCount">0</span></small>
</div>
<button class="btn btn-primary" id="convertBtn">Dönüştür</button>
<button class="btn btn-success" id="copyBtn">Kopyala</button>
<button class="btn btn-warning" id="pasteBtn">Yapıştır</button>
<h4 class="well well-lg text-success" id="result"></h4>
</div>
</body>
$(document).ready(function () {
// Metni kopyala fonksiyonu (execCommand kullanıyor)
function copyToClipboard(text) {
var tempInput = $("<input>");
$("body").append(tempInput);
tempInput.val(text).select();
try {
var success = document.execCommand("copy");
if (success) {
$("#sonuc").html("<span style='color:green'>" + text + "</span> Panoya kopyalandı");
} else {
$("#sonuc").html("<span style='color:orange'>Kopyalama başarısız!</span>");
}
} catch (err) {
$("#sonuc").html("<span style='color:red'>Kopyalama desteklenmiyor!</span>");
// console.error("Kopyalama hatası:", err);
}
tempInput.remove();
}
function pasteFromClipboard() {
var gelen = $("#result").text();
$("#inputText").val(gelen).trigger("input"); // Yapıştırınca karakter sayacı güncellenir
}
// Kopyala Butonu
$("#copyBtn").click(function () {
var textToCopy = $("#result").text();
if (textToCopy) {
copyToClipboard(textToCopy);
}
});
// Yapıştır Butonu
$("#pasteBtn").click(function () {
pasteFromClipboard();
});
// Karakter Sayacı
$("#inputText").on("input", function () {
var charCount = $(this).val().length;
$("#charCount").text(charCount);
});
// Metni URL formatına çevirme (SEO-Friendly)
function toSeoUrl(text) {
var trMap = {
'ç': 'c', 'ğ': 'g', 'ı': 'i', 'ö': 'o', 'ş': 's', 'ü': 'u',
'Ç': 'c', 'Ğ': 'g', 'İ': 'i', 'Ö': 'o', 'Ş': 's', 'Ü': 'u'
};
text = text.replace(/[çğıöşüÇĞİÖŞÜ]/g, function (match) {
return trMap[match];
});
text = text
.toLowerCase()
.trim()
.replace(/'/g, ' ') // Tek tırnakları (-) ile değiştir
.replace(/ +/g, ' ')
.replace(/[^a-z0-9 -]/g, '') // Özel karakterleri kaldır
.replace(/\s+/g, ' ') // Boşlukları "-" yap
.replace(/-+/g, ' '); // Birden fazla "-" varsa teke düşür
return text;
}
// Dönüştür Butonu
$("#convertBtn").click(function () {
var inputText = $("#inputText").val();
var seoUrl = toSeoUrl(inputText);
$("#result").text(seoUrl);
});
});