- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
<div id="ch" onclick="alert(this.onclick)">ch</div><br /><br />
<div id="chNew">chNew</div>
<script>
var chk = document.getElementById('ch');
var chkNew = document.getElementById('chNew');
var onNew = function(){alert('onNew')};
chkNew.onclick = chk.onclick;
chk.parentNode.removeChild(chk);
</script>
как присвоить chkNew.onclick не только chk.onclick но еще и onNew???
помогите елы палы пожалуйста, 7 часов уже кручу верчу.
возможно можно обойтись и без того что выше написано, если можно сделать так:
<input type="checkbox" id="ch" />
<script>
document.getElementById('ch').type = "button"; //в ие не работает
</script>
ну, в даннйо ситуации можно вот так, а похорошему нао свои обработчики событий делать
chkNew.onclick = function () {
chk.onclick.apply(chkNew);
onNew.apply(chkNew);
}
а второй вариант можно заставить работать?
document.getElementById('ch').setAttribute("type","button");
bearman добавил 25.01.2010 в 07:19
попробуй, может заработает, не разу не пробовал)
если так не заработает, то больше никак :)
я пробывал, не работает
зачит делай как я показал до этого)
ну да, сенкс, позже выложу код той ерунды для которой это все надо
vccv добавил 25.01.2010 в 08:08
function () {
chk.onclick.apply(chkNew);
onNew.apply(chkNew);
}
вот что находится в onclick, это же ссылки, возможно ли запихать сами функции
хотел сделать вид чекбоксов одинаковыми и при этом писать тег как обычно.
проблемы две:
1. так и не получилось копировать onclick,onmouseover и onmouseout
2. не передаются данные не get не post
<form action="" method="get">
<input type="checkbox" name="r1" id="g1" class="myCheckBox" checked="checked" />
<input type="checkbox" name="r2" id="g2" class="myCheckBox" disabled="disabled" />
<input type="checkbox" name="r3" id="g3" class="myCheckBox" />
<input type="submit" value="m get" />
</form>
<style>
.myCheckBox {
margin:0px;
padding:0px;
border:0px;
width:14px;
height:14px;
font-size:0px;}
</style>
<script>
function elemName(id) {return document.getElementsByTagName(id)};
function myCheckBox(path,clss) {
var newOnmouseover = function() {
if (!this.disabled) {
if (this.value=='on') this.style.backgroundImage = 'url('+path+'chekBox_c_o.gif)';
else this.style.backgroundImage = 'url('+path+'chekBox_o.gif)'}}
var newOnmouseout = function() {
if (!this.disabled)
if (this.value=='on') this.style.backgroundImage = 'url('+path+'chekBox_c_e.gif)';
else this.style.backgroundImage = 'url('+path+'chekBox_e.gif)'}
var newOnclick = function() {
if (!this.disabled) {
alert('name='+this.name+'; checked='+this.checked);
if(this.value=='on') {
this.value='';
this.checked = false;
this.style.backgroundImage = 'url('+path+'chekBox_o.gif)'}
else {
this.value='on';
this.checked = true;
this.style.backgroundImage = 'url('+path+'chekBox_c_o.gif)'}}
}
var my = new Object();
for (var i=0;i<elemName('input').length;i++) {
var se = elemName('input').item(i);
if (se.className == clss && se.type == "checkbox") {
my = document.createElement('input');
my.type = 'button';
my.name = se.name;
my.className = se.className;
my.onclick = newOnclick;
my.onmouseover = newOnmouseover;
my.onmouseout = newOnmouseout;
my.id = se.id;
if(se.disabled) {
my.disabled = true;
my.style.backgroundImage = 'url('+path+'chekBox_d.gif)';}
else
if(se.checked) {
my.setAttribute('value','on');
my.value = 'on';
my.checked = true;
my.style.backgroundImage = 'url('+path+'chekBox_c_e.gif)';}
else {
my.value = '';
my.checked = false;
my.style.backgroundImage = 'url('+path+'chekBox_e.gif)';}
se.parentNode.replaceChild(my,elemName('input').item(i));
}
}
}
myCheckBox('/img/','myCheckBox');
</script>
<?=$_GET['r1'];?>
в архиве картинки видов чекбокса оперы
всеже написал (заменяем checkbox и radio). может кому надо
проблемы по прежнему две:
1. не очень удобно изменять значение атребутов c помощью js
2. в опере при двойном щелчке открывается меню (походу для всех элементов inline)
вот так можно использовать
<style>
/* Js on*/
.operaCheckbRadioJs {
vertical-align:middle;
display:inline-block;
width:14px;
height:14px;}
/* Js off */
.operaCheckbRadio {}
</style>
<form action="" method="get">
1.<input type="checkbox" name="name[]" class="operaCheckbRadio" />
<input type="checkbox" name="name[]" class="operaCheckbRadio" /><br /><br />
2.<input type="radio" name="name2" class="operaCheckbRadio" />
<input type="radio" name="name2" class="operaCheckbRadio" checked="checked" />
disabled( <input type="radio" name="name2" class="operaCheckbRadio" disabled="disabled" id = "disabled" /> )
<input type="radio" name="name2" class="operaCheckbRadio" /><br /><br />
3.<input type="radio" name="name3" class="operaCheckbRadio" />
<input type="radio" name="name3" class="operaCheckbRadio" />
<input type="button" onclick="enabled('disabled')" value="enabled('disabled')" /><br /><br />
<input type="submit" value="Отправить" />
</form>
<script type="text/javascript" src="/myCheckbRadio.js"></script>
<script>
myCheckbRadio("/CheckbRadio/","operaCheckbRadio");
function enabled(id) {
document.getElementById(id).disabled = false;
document.getElementById(id).parentNode.onmouseout();
}
</script>
<?
$name = $_GET['name']?$_GET['name']:array();
echo '1.';
foreach($name as $k=>$v) echo 'k = '.$k.', v='.$v.';';
echo '<br />';
echo '<br />2.'.$_GET['name2'].'<br />';
echo '<br />3.'.$_GET['name3'].'<br />';
?>
сам код:
и картинки из оперы )