Criar Url amigavel SLUG
by Marcos vini
HTML
<div class='panel'>
<form id="acesso" method="post">
<label>Texto:<input type="text" name="texto" id="texto"></label>
<br>
<input type="button" id='gerar' value="conveter">
<div id="resultado"></div>
</form>
</div>
CSS
::focus{
outline:none;
}
.panel {
margin-bottom: 20px;
background-color: #ffffff;
border: 1px solid transparent;
border-radius: 4px;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
max-width:450px;
}
input[type='text']:focus {
-webkit-box-shadow: none !important;
box-shadow: none !important;
border-color: #19b9e7 #17b0dc !important;
outline: none;
-webkit-transition: linear 0.5s;
transition: linear 0.5s;
-moz-transition: linear 0.5s;
-ms-transition: linear 0.5s;
-o-transition: linear 0.5s;
}
input[type='text']{
position: relative;
padding: 10px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
display: block;
width: 100%;
height: 34px;
padding: 6px 12px;
font-size: 14px;
line-height: 1.42857143;
color: #555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
-webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
border-radius: 0px !important;
color: #999 !important;
-webkit-box-shadow: none !important;
box-shadow: none !important;
border: 1px solid #ddd !important;
}
input[type='button']{
float: left;
display: inline-block;
padding: 6px 12px;
margin-bottom: 0;
font-size: 14px;
font-weight: 400;
line-height: 1.42857143;
text-align: center;
white-space: nowrap;
vertical-align: middle;
-ms-touch-action: manipulation;
touch-action: manipulation;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
...
JavaScript
"use strict";
var texto= document.querySelector('#texto');
document.querySelector('#gerar').addEventListener('click',function(){
var $slug = '';
var trimmed = texto.value.trim();
$slug = trimmed.replace(/[^a-z0-9-]/gi, '-').
replace(/-+/g, '-').
replace(/^-|-$/g, '');
document.querySelector('#resultado').innerHTML= $slug.toLowerCase();
});