Смысл в том, что код, выполняемый внутри onclick="" должен возвращать значение. Если это true - то происходит обработка ссылки т.е. банальный переход по ней, если false - то никто никуда не переходит :) Обычно всё же возвращается false, а ссылка служит просто удобным элементом для запуска каких-то процессов.
Ваша проблема была в том, что вы щёлкали по первой ссылке - открывалось новое окно, но затем в старом происходил переход по ссылке т.е. документ как бы перезагружался, естественно там все объекты создавались заново и информация об объекте dop терялась (хотя новое окно по прежнему продолжало существование).
Могу сделать. С джанго на ты. Дебиан тоже со мной дружит.
Контакты:
email: verdegal@ya.ru
jabber: verdegal@ya.ru
icq: 613186259
skype: verde.gal
Так он вроде и не спрашивает, наоборот, сам утверждает :D
Ну preg_match ещё можно заюзать. А вообще, да, тут и strpos неплохо смотрится.
if (ereg($a . "-", $filename)) {...
Чем вам не нравится? Пользуйтесь. А то что оно медленно работает - это бред. Без полной картины оптимизировать смысла нет. Может у вас там потом выборка к бд в сто раз дольше делается - тут хоть заоптимизируйся со strpos - толку ноль будет :)
А, точно, привык на питоне уже строчки складывать :))
Найдите два отличия от вашего кода ;-)
<html> <head> <title></title> </head> <body> <a href="" onclick="javascript: dop=window.open('1.html','','width=400,height=150'); return false">open</a> <a href="" onclick="javascript: dop.close(); return false">close</a> </body> </html>
Кстати, "javascript:" писать не обязательно.
ereg ( $s2 + "-", $file)
Почему-то моё сообщение не отображается, то ли модерация, то ли ещё что, попробую ещё раз.
Вот пример моей работы - парсер wordstat.yandex.ru
#!/usr/bin/env python # -*- coding: utf-8 -*- import os from grab import Grab from urllib import quote_plus import time def parse(query): g = Grab() # Retrieve fuid01 cookie g.setup(url='http://kiks.yandex.ru/su/', log_file='log.html') g.request() page = 1 max_page = None results = open('results.txt', 'w') while True: if max_page and page > max_page: break # Build query url print 'Parsing page #%d' % page query_safe = quote_plus(query.encode('utf-8')) url = 'http://wordstat.yandex.ru/?cmd=words&page=%d&text=%s&geo=&text_geo=' % (page, query_safe) g.setup(url=url) g.request() # If captcha image exists refresh fuid01 cookie while 'http://captcha.yandex.net' in g.response_body: print 'Captcha detected' # Refresh fuid01 cookie g = Grab() g.setup(url='http://kiks.yandex.ru/su/', log_file='log.html') g.request() print g.cookies # Query yandex again g.setup(url=url) g.request() # Parse results table for tr in g.etree.xpath('//table[@class="campaign"]//tr[@class="tlist"]'): items = [x.strip().encode('utf-8') for x in tr.xpath('td//text()')] results.write('%s\t%s\n' % (items[1], items[3])) #time.sleep(1) # Check the link on next page if 'cmd=words&page=%d' % (page + 1) in g.response_body: page += 1 else: break query = u'скачать сумерки' parse(query) print 'Done'
> Ну а почему бы и нет. Вы же ищите работу
Потому что читаем первое сообщение "Все нюансы через личку...". Меня заинтересовало предложение топикстартера и я хотел узнать подробности. Я действительно не понимаю, зачем мне нужно выполнять ваше тестовое задание, вы ведь не предлагаете мне работу :)
verdegal добавил 15.08.2010 в 02:21
А по поводу проверки кодера. Можно заставить его пройти online тесты по нужной технологии. Например, на brainbench.com - правда, упс, они там все платные. Хотя можно сделать финт ушами, заставить его зарегаться на odesk.com и пройти там тесты - там куча тестов и все бесплатные :)