Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.03.2011, 22:20
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

onclick на ссылке
Всем привет) Как изменить содержание параграфа после клика по ссылке?
Делаю так:
function text(a){

<script language="javascript">
function text(){
var a = document.getElementById('par');
a.innerHTML = 'измененный текст параграфа';
}
</script>
<p id="par"></p>
<a href="javascript:void(0)" onclick="text('#par');">Ссылка</a>
<textarea onclick="text()"></textarea>

клик по ссылке не работает, а по полю работает, почему?)


И почему не работает такая конструкция:

<script language="javascript">
function text(a)
{
a.innerHTML = 'измененный текст параграфа';
}
</script>
<p id="par"></p>
<a href="javascript:void(0)"onclick="text('#par');"> сылка</a>
<textarea onclick="text('#par')"></textarea>
Ответить с цитированием
  #2 (permalink)  
Старый 06.03.2011, 22:48
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Сообщение от (Sandr)
почему?
У ссылок есть свойство text. В хроме вот это:
<a href="#" onclick="console.log( text ); return false;">Ссылка</a>

выводит в консоль "Ссылка". Не знаю как в других браузерах, но лучше поменять имя функции. Это во-первых.
#par - зачем #??? И как это вообще должно работать?
Ответить с цитированием
  #3 (permalink)  
Старый 06.03.2011, 23:20
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

Сообщение от Sweet Посмотреть сообщение
У ссылок есть свойство text. В хроме вот это:
<a href="#" onclick="console.log( text ); return false;">Ссылка</a>

выводит в консоль "Ссылка". Не знаю как в других браузерах, но лучше поменять имя функции. Это во-первых.
#par - зачем #??? И как это вообще должно работать?
Спасибо за помощь)) Второй случай должен работать, точно также как и первый)) Но это уже не важно, т.к. теперь всё работает)
Ответить с цитированием
  #4 (permalink)  
Старый 08.03.2011, 19:55
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

Появился ещё один вопрос. Чтоб не создавать лишнюю тему, я его сдесь напишу, если никто не против)

Есть скрытая форма на хтмл, после нажатия на ссылку "добавить комментарий", она с помощью $(переменная).animate({блаблабл }); становится видимой, и плавно раскрывается. Но, т.к. эта форма расположена в конце странцы после раскрытия, страница увеличивается, и форма "уезжает" вниз, и пользователю видно только её начало и чтоб увидеть её полностью нужно немного прокрутить страницу вниз. Как сделать так, чтоб после(или во время) раскрытия формы вид фокусировался на ней?
скрины в прикреплённых файлах(на дизайн и текст не обращайте внимания )
Изображения:
Тип файла: jpg до_раскрытия.jpg (19.6 Кб, 14 просмотров)
Тип файла: jpg после_раскрытия.jpg (10.5 Кб, 9 просмотров)
Ответить с цитированием
  #5 (permalink)  
Старый 09.03.2011, 08:52
Профессор
Отправить личное сообщение для Matre Посмотреть профиль Найти все сообщения от Matre
 
Регистрация: 07.01.2011
Сообщений: 582

$("body").animate({
	scrollTop : "+=100px" // Прокрутить вниз на 100 пикселей...
}, 1000); // ... за 1000 мс (1 с)
Ответить с цитированием
  #6 (permalink)  
Старый 09.03.2011, 17:08
Профессор
Отправить личное сообщение для (Sandr) Посмотреть профиль Найти все сообщения от (Sandr)
 
Регистрация: 14.10.2010
Сообщений: 376

Сообщение от Matre Посмотреть сообщение
$("body").animate({
	scrollTop : "+=100px" // Прокрутить вниз на 100 пикселей...
}, 1000); // ... за 1000 мс (1 с)
Спасибо чувак)
Ответить с цитированием
  #7 (permalink)  
Старый 23.09.2015, 01:19
Аспирант
Отправить личное сообщение для ninja2 Посмотреть профиль Найти все сообщения от ninja2
 
Регистрация: 07.06.2015
Сообщений: 90

Если никто не против я здесь спрошу, от добавил к ссылке событие onclick
<a onclick="dell(1);" href="javascript:void(0)" id="1">Удалить</a>


Добавил обработчик
$(function() {
		
	//функция которая удаляет
	function dell(i){
		alert("hellow");
		alert(i);
	};
	
});


Кликаю по ссылке и ниче не рабобтает, как сделать чтобы работало?
Ответить с цитированием
  #8 (permalink)  
Старый 23.09.2015, 02:51
Аспирант
Отправить личное сообщение для ninja2 Посмотреть профиль Найти все сообщения от ninja2
 
Регистрация: 07.06.2015
Сообщений: 90

В общем разобрался, сделал через класс, а почему у меня функция только один первый раз вызывается, а потом когда я второй раз кликаю по ссылке она больше не вызывается, вот ссылка и функция

<a href="javascript:void(0)" class="kkk" id="2">Удалить</a>


$(".kkk").click(function() {
		alert("hellow world");
		//1 получаем массивы элементов
	/*	alert(this.id);
		var a=$("#menu a");
		var c=$("#content div");
	//	alert(this.id);
		a[this.id].remove();
		c[this.id].remove();*/
		ff();
	});

После вызова функции ff(); alert("hellow world") уже не выводится, в чем проблема? Функция ff() ниче не меняет, просто заново генерирует два блока из третьего.

Что может происходить, почему после вызова ff() перестает вызываться обработчик?
Ответить с цитированием
  #9 (permalink)  
Старый 23.09.2015, 03:48
Аспирант
Отправить личное сообщение для ninja2 Посмотреть профиль Найти все сообщения от ninja2
 
Регистрация: 07.06.2015
Сообщений: 90

От полностью код, обработчик клик один раз вызывается, остальные разы не реагирует че так?
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
   <style type="text/css">
      #edit > p:after{
        content: "Переместить";
        margin-left: 10px;
      }
      #edit {
        width: 500px;
      }
      #menu a{
        margin: 5px;
      }
	  #block a{
        margin: 5px;
      }
	  .block{
		background-color:red;
	  }
	  #content a{
		 margin: 5px; 
	  }
    </style>

   <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
    <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

  <script>
$(function() {
	
	function ff()
	{
		//1 получаем массивы элементов
		var a=$("#menu a");
		var c=$("#content div");
		//var d=new Array();
		var d=[];
		//2. обходим элементы в цикле
		for(i=0;i<c.length;i++)
		{
			var z=$("</p>",{//создаем параграф
				data: {
					b: "b"
				}
			});
			
			//создаем ссылку
			var hr=$("<a/>",{
				id: i,
				class: "kkk",
				text: "Удалить",
				href: "javascript:void(0)",
			});
			
			z.append([hr]);//добавляем в параграф
			d[i]=z;
		}
		
		$("#edit").text("");
		$("#edit").append(d);
	}
	ff();
	
	
	//функция сотрировки
	$("#edit").sortable({
		stop: function(a, b) {
			var c = $.map($("#edit p"), function(a,k) {
			return $(a).data("b")
		});

		var d = $.map($("#edit p"), function(a,k) {
		return $(a).data("bb")
		});
		$("#menu").append(c);
		$("#content").append(d);
	//	ff();
		}
	});	

        $("#select").change(function() {
          if ($("#select option:selected").val() == 'textarea') {
            $("#options").html('text: <textarea id="textarea"></textarea>');
          }
          if ($("#select option:selected").val() == 'img') {
            $("#options").html('link: <input id="image">');
          }
        });
		
	$(".kkk").click(function() {
	//	alert("hellow world");
		//1 получаем массивы элементов
		alert(this.id);
		var a=$("#menu a");
		var c=$("#content div");
		alert(this.id);
		a[this.id].remove();
		c[this.id].remove();
		ff();
	});
	
});

 
  </script>
</head>
<body>
<div id="menu">
   <a href="#dfdf">1df</a>
   <a href="#fgg44">2fsdfsd</a>
   <a href="#Df324">3dsfdsf</a>
</div>
<hr>
<div id="content">
	<div id="dfdf">12</div>
	<div id="fgg44">45yth</div>
	<div id="Df324">64h<b>eh</b>w</div>
</div>
<hr>
<div id="edit"></div>

<hr>
<br>


</body>
</html>
Ответить с цитированием
  #10 (permalink)  
Старый 23.09.2015, 03:50
Аспирант
Отправить личное сообщение для ninja2 Посмотреть профиль Найти все сообщения от ninja2
 
Регистрация: 07.06.2015
Сообщений: 90

Я один элемент могу только удалить, потом ниче не выходит???
После вызова функции ff в обработчике перестает работать, как это исправить и почему так?

так что никто не знает?

Последний раз редактировалось ninja2, 23.09.2015 в 18:18.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание события onclick? kerranswell Events/DOM/Window 31 09.05.2011 21:20
Как избавиться от каскадного onclick? GydruS Events/DOM/Window 2 24.02.2011 11:54
onclick и <object> MCTrane Общие вопросы Javascript 3 23.12.2010 23:33
Обработка onClick lliberty Общие вопросы Javascript 2 03.04.2010 22:54
Событие onClick avtor01 Events/DOM/Window 3 03.09.2009 18:01