Archive

Posts Tagged ‘javascript’

Как да предпазим mailto линка от спам

August 24th, 2010 No comments

Винаги в личните или фирмени сайтовете се налага да оставим e-mail адрес за връзка. И най-лошото е, че при първия спайдър, който мине – мейла отива в нечий спам лист и се започват безкрайните печалби от лотарии, продажба на виагра и т.н. :)) Решения – какви ли не, но нищо приятно, удобно и достатъчно user friendly. Примери: мейл адрес, в който “@” е картинка и картинката се казва “at.gif” :D или пък целият мейл е картинка и трябва да го преписваш наръка. А пък най-много ме дразнят “pencho [AT] abv.bg”. Хора, това последното мислите ли, че ви е от някаква полза? :) Общо взето последното няма да го хване някой паяк, който е контролната работа на петокласник (лично мнение) Read more…

Бъг във Firefox

February 16th, 2009 No comments

Мдааа… 5 часа яко ровене и писане на JS… И дойде моментът на истината… Има бъг във Firefox. Става въпрос за динамичното генериране на файлове. Например имам един стринг и искам да го насоча към download manager-a. Нормално – ползвам URI с data параметър, но с какво се сблъсквам – лисичката не знае какво име да сложи, а и аз не мога да й кажа и си пльоква рандом с разширение .part :D Read more…

Eclipse и стандартите табулации

February 7th, 2009 No comments

Мда, by default Eclipse слага табове, вместо space-ове (обикновено 4). Като цяло е отвратително, защото табовете не са еднакви навсякъде.

Какво имам предвид – да вземем за пример един конфугурационен xml, копиран от файл с tab-ове, вместо space-ове. Копирам го и го цвъквам в конзола с отворен файл – най-обикновен copy/paste. Ами, съдържанието леко се помазва ;) Read more…

Професионална шматка

January 26th, 2009 No comments

Мда, главният герой съм аз :/

Регистрирал съм блога в google analytics и както повечето каунтъри и разни статистики на посетителите – използва се JS, който се слага в header-а или footer-а. До тук всичко е песен, няма проблем, но излезе наскоро нова версия на темата, която ползвам (fluid blue). Сложих я и забравих за случилото се… След малко повече от месец погледнах статистиките и виждам нулички нявсякъде и малко се поококорих, като съм свигнал да гледам една права по около 30-40 посещения на ден. И изведнъж – прас нула… И се замислих, че не съм сложил javascript-а в новата тема :) Хитро, а?…

ASCII spinner в HTML с JavaScript

December 31st, 2008 2 comments

Харесвам, когато има някакво въртящо се gif-че, което симулира прогрес при някакъв процес. Ето защо направих пренасочващата главна страница да се държи по подобен начин. Вложената доза шега е… Огромна и е породена от НАЙ-НАЙ-прекрасния торент клиент за мен – ctorrent. Няма значение, отплеснах се…

Като цяло не е нищо кой-знае какво, просто първата идея за имплементация, за която се сетих. Какво представлява: масив с 4 елемента – “\”, “|”, “/” и “-”, които непрекъснато се показват един след друг през определено време. Спинър-а не е cвързан с извършения прогрес! Трябва ни html страница и малко JavaScript. Ето JS-a:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<script type="text/javascript">
  var spinnerElements = new Array("\\", "|", "/", "-");
  var spinnerIntervalId;
  var prevIndex = 0;

  function getById(elementId) {
    if (document.getElementById) {
      return document.getElementById(elementId);
    } else if (document.all) {
      return document.all[elementId];
    } else if (document.layers) {
      return document.layers[elementId];
    }
    return null;
  }

  function setSpinnerValue(value) {
    getById("spinner").innerHTML = value;
  }

  function getNextValue() {
    if (prevIndex >= spinnerElements.length) {
      prevIndex = 0;
    }
    var value = spinnerElements[prevIndex];
    prevIndex++;
    return value;
  }

  function startSpinner() {
    spinnerIntervalId = setInterval("setSpinnerValue(getNextValue());", 250);
  }

  function stopSpinner() {
    if (spinnerIntervalId != null) {
      clearInterval(spinnerIntervalId);
      spinnerIntervalId = null;
    }
  }
</script>

Малко CSS:

1
2
3
4
5
6
7
8
9
10
<style type="text/css">
  span#spinner {
    font-size:    16pt;
    font-weight:  bold;
  }

  a {
    color:      #0000EE;
  }
</style>

И няколкото реда HTML:

1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>Spinner</title>
  </head>
  <body>
    <a href="#" onClick="startSpinner();">start</a>
    <a href="#" onClick="stopSpinner();">stop</a>
    <span> [ <span id="spinner">-</span> ]</span>
  </body>
</html>

Целият файл под формата на демо може да се види тук.