Перейти к содержимому


Пользователь месяца
Андрей WPMasterKZ Андрей WPMasterKZ 1-й за Ноябрь
Очков активности: 888 1 тема, 71 сообщение, 8 баллов репутации
Сайт: wpmaster.kz
ТОП самых активных за этот месяц
  • Фотография OlgaGetman
    #1

    OlgaGetman
    Очков активности: 684 5 тем, 99 сообщений, 4 балла репутации

  • Фотография Mandarin
    #2

    Mandarin
    Очков активности: 552 3 темы, 83 сообщения, 4 балла репутации

  • Фотография TimurR
    #3

    TimurR
    Очков активности: 150 Вне конкурса за определение пользователя месяца

  • Фотография Андрей WPMasterKZ
    #4

    Андрей WPMasterKZ (wpmaster.kz)
    Очков активности: 117 Вне конкурса за определение пользователя месяца

  • Фотография BLIK
    #5

    BLIK
    Очков активности: 102 0 тем, 17 сообщений, 4 балла репутации

  • Фотография Rodiola
    #6

    Rodiola
    Очков активности: 48 1 тема, 13 сообщений, 2 балла репутации

  • Фотография WGN
    #7

    WGN (worldgamenews.com)
    Очков активности: 40.5 Вне конкурса за определение пользователя месяца

  • Фотография pozitron123
    #8

    pozitron123
    Очков активности: 27 2 темы, 12 сообщений, 1 балл репутации

  • Фотография thisismyname
    #9

    thisismyname
    Очков активности: 27 4 темы, 6 сообщений, 1 балл репутации

  • Фотография m3Re
    #10

    m3Re
    Очков активности: 22.5 2 темы, 9 сообщений, 1 балл репутации

  • Показать весь ТОП 10
Поддержите форум! =)
Апдейты
  • Яндекс ИКС: 29.11.2018
  • Яндекс выдача: 11.12.2018
Топ 5 участников по репутации


Как добавить к блоку функцию?

#1 hoax

hoax
  • Неактивные
  • 24 сообщений
  • Репутация: 1
0

Отправлено 30 September 2012 - 20:22

Вот есть блок <div id="block"></div> как мне добавить к нему функцию с параметрами в html

В ссылке это делается так
<a href="javascript:func('1');" >Показать</a>

а как в блоке?

 

 

  • 0

#2 yury

yury
  • Пользователь
  • 645 сообщений
  • Репутация: 190

Отправлено 30 September 2012 - 20:40

<div id="block" onclick="func('1');"></div>
Это выполнение скрипта по клику.
  • 0

#3 hoax

hoax
    Topic Starter
  • Неактивные
  • 24 сообщений
  • Репутация: 1

Отправлено 30 September 2012 - 20:41

не, не при клике, чтобы просто была функция
  • 0

#4 yury

yury
  • Пользователь
  • 645 сообщений
  • Репутация: 190

Отправлено 30 September 2012 - 20:50

Что значит "чтобы просто была"?
Она ведь должна в каком-то случае выполняться?
А если нет, то зачем она там будет жить? :D
Может вам надо, чтобы по наведению мыши она выполнялась? Тогда так:
<div id="block" onmouseover="func('1');"></div>

  • 0

#5 hoax

hoax
    Topic Starter
  • Неактивные
  • 24 сообщений
  • Репутация: 1

Отправлено 30 September 2012 - 20:54

Нет, ну мне надо допустим, вот новость заключенная в блок <div id="block">news</div> и нужен скрипт, который бы определял дату новости (и перемещал ее), которую я буду задавать в параметрах function date(25) этого новостного блока
  • 0

#6 yury

yury
  • Пользователь
  • 645 сообщений
  • Репутация: 190

Отправлено 30 September 2012 - 21:12

Есть подозрение, что вам нужен не яваскрипт, а php, потому что обычно новости сортируются на стороне сервера и посетителю отдаются уже в отсортированном виде.
Ну или возможно вы неполно формулируете задачу и потому непонятно, как вам помочь (например, из ваших объяснений неясно откуда скрипт возьмет дату новости и куда и зачем новость потом надо переместить).

Попробуем предположить, что у вас есть некий массив новостей, который следует вывести на экран в определенном порядке именно с помощью JS.
В таком случае вам следует просто вставить в нужное место вашей страницы вызов скрипта, который выведет этот массив, уже разложенный по блокам.
хтмл код страницы
<script type="text/javascript">
...
</script>
другой хтмл код страницы

  • 0

#7 hoax

hoax
    Topic Starter
  • Неактивные
  • 24 сообщений
  • Репутация: 1

Отправлено 30 September 2012 - 21:29

<div id="news1">news<span>1</span></div>
<div id="news1">news<span>2</span></div>
<div id="news1">news<span>3</span></div>
<div id="news1">news<span>4</span></div>

Где span - это число т.е. дата месяца.

есть раздел *анонсы* и раздел *завтра*
в анонсах публикуется то что написал выше, а в "завтра", все те же новости (они же блоки), только на следующий день, раз сегодня 25 число допустим, то там публкуются новости 26 числа.

В данном примере придется брать innerHTML из span, т.е. само число (допустим 1, как написано) и автоматом добавлять в "завтра* если это требуется.

Т.е. будет сравнивать

var date= new Date;
var d = date.getDate();
if(d<span.innerHTML) то вывести данную новость в блок "завтра"

  • 0

#8 yury

yury
  • Пользователь
  • 645 сообщений
  • Репутация: 190

Отправлено 30 September 2012 - 21:33

Как я и сказал, подобную сортировку лучше выполнять на стороне сервера на php.
Но если сильно хочется, то можно и на клиентской стороне это делать, и для этого не нужно брать что-то из span, а изначально положить все в JS массив (дата-новость) и уже из него все распределить по разделам *анонсы* и *завтра* циклом с проверкой по дате типа такого
var annonce = '';
for (i=1; i<25; i++) { annonce += '<div id="news'+i+'">news<span>'+i+'</span></div>n';}
getElementById('annonce').innerHTML = annonce;

Только следует понимать, что у некоторых JS может быть отключен и они ваши новости не увидят вообще.
  • 0

#9 hoax

hoax
    Topic Starter
  • Неактивные
  • 24 сообщений
  • Репутация: 1

Отправлено 30 September 2012 - 21:43

Хммм... ну здесь фактически тоже самое, только я не хочу задавать целиком все из js, т.е. тут изначально анонсы пусты.

Т.е. у меня в анонсам могут быть разные числа хоть 30.09, или 05.12 в анонсах они будут все, а в завтра будут только те, кто только будут отмечатся на след. день, будут сравниваться с текущей датой, и если новость "прочрочена" удаляться.

А php я не знаю)

Ну все равно спасибо что-нибудь придумаем
  • 0

#10 yury

yury
  • Пользователь
  • 645 сообщений
  • Репутация: 190

Отправлено 30 September 2012 - 21:55

Хммм... ну здесь фактически тоже самое, только я не хочу задавать целиком все из js, т.е. тут изначально анонсы пусты.

И откуда они тогда возьмутся, если изначально их нет?

Короче.
Я не сторонник выбора сложных решений, когда можно сделать проще.
В данном случае, самый правильный, надежный и простой вариант — это сортировка и вывод средствами php.
Второй по простоте и надежности вариант (с упомянутыми выше оговорками) — это сложить исходные данные в JS массив и сортировать и выводить его средствами же JS.
Ваш вариант — это, видимо, попытаться отпарсить конечный HTML и по результатам парсинга выполнять сортировку — это, на мой взгляд, перебор с извратом. Но если очень хочется — пытайтесь. :D
  • 0

#11 hoax

hoax
    Topic Starter
  • Неактивные
  • 24 сообщений
  • Репутация: 1

Отправлено 01 October 2012 - 17:25

Все равно, начинаю писать код, и не получается, я должен вручную добавлять дату, а как мне это сделать без самог html не знаю, просто я хотел так, сделать новость html там указать дату (где нибудь), а скрипт будет анализировать дату и вставлять новость в свою колонку.

Поверьте, я уже кучу всего перебрал : создание массива с датой, и новостью, создание одного общего массива, также хотел сделать автоматическое создание блока через createElement, но ничего не подходит, т.к. мне нужно взаимодействие с html, и мне нужно самостоятельно указывать дату, через js я не вижу такой возможности, не вижу в этом ничего извратного, если допустим добавлять число в id(#news_23, где 23 - это число), что-то типо того. У меня же не просто 2 стороки текста, там куча вложенных тегов, изображений и еще один скрипт, такие дела.
  • 0

robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru