Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 14.05.2015, 15:52
Sn9 Sn9 вне форума
Интересующийся
Отправить личное сообщение для Sn9 Посмотреть профиль Найти все сообщения от Sn9
 
Регистрация: 07.05.2015
Сообщений: 20

Сообщение от ksa
Вот пример с локалсторадж...
Вот так будет корректно?
<a href="" id="d1">ПЕРВАЯ</a>
<script type='text/javascript'>
$(function()
        {
            $('#d1').click(function (eventObject) { //при клике на ссылку
                eventObject.preventDefault();
                $('.all').load("all.php #infa1");
                var one = "$('.all').load( "all.php #infa1")"; //запишется в переменную one текст
                localStorage.setItem("all", one); //запишется в localStorage ключ all со значением из one
            });

            var oneL = localStorage.getItem("all"); //возмется ключ all и присвоется в oneL
            alert(oneL); //должно вывести что находится в oneL
        });
</script>


Или подскажите как правильно заэкранировать в 8ой строке

Последний раз редактировалось Sn9, 14.05.2015 в 16:03.
Ответить с цитированием
  #12 (permalink)  
Старый 14.05.2015, 16:25
Sn9 Sn9 вне форума
Интересующийся
Отправить личное сообщение для Sn9 Посмотреть профиль Найти все сообщения от Sn9
 
Регистрация: 07.05.2015
Сообщений: 20

Сделал так, по логике должно при клике на первую ссылку вместо oneL выводиться строка которую я записал в локалсторадж после перезагрузки страницы, но почему то не выводит, хотя если через alert пробовать, то выводит строку

<a href="" id="d1">один</a>
    <a href="" id="d2">два</a>
    <a href="" id="d3">три</a>
    <a href="" id="d4">четыре</a>
    <script type='text/javascript'>

        $(function one() {
            $('#d1').click(function (eventObject) { //при клике на ссылку
                eventObject.preventDefault();
                $('.all').load("all.php #infa1");
                var one = ' $(\'.all\').load( "all.php #infa1"); '; //запишется в переменную one текст
                localStorage.setItem("one", one); //запишется в localStorage ключ all со значением из one
            });
                var oneL = localStorage.getItem("one");

            $( function ready() {
                
                oneL;
                $('#d1').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa1");} );
                $('#d2').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa2");} );
                $('#d3').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa3");} );
                $('#d4').click( function(eventObject) {eventObject.preventDefault();$('.all').load( "all.php #infa4");} );
            });//END
        });

        

    </script>

<div class="all"></div>
Ответить с цитированием
  #13 (permalink)  
Старый 14.05.2015, 16:47
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от Sn9
Вот так будет корректно?
Что-то туго пока идет...

Так вот понятно будет?

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
<link rel="stylesheet/less" type="text/css" href="style.less">
<script src="http://cdnjs.cloudflare.com/ajax/libs/less.js/2.5.0/less.min.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
	var url=localStorage.getItem("url")||"all.php";
	$('#info').text(url);
	$('.test').click(function() {
		var url="all.php #infa"+$(this).text();
		$('#info').text(url);
		localStorage.setItem("url", url);
	});
});
</script>
</head>
<body>
<a href="" id="d1" class='test'>1</a>
<a href="" id="d2" class='test'>2</a>
<a href="" id="d3" class='test'>3</a>
<a href="" id="d4" class='test'>4</a>
<div id="info"></div>
</body>
</html>
Ответить с цитированием
  #14 (permalink)  
Старый 14.05.2015, 18:06
Sn9 Sn9 вне форума
Интересующийся
Отправить личное сообщение для Sn9 Посмотреть профиль Найти все сообщения от Sn9
 
Регистрация: 07.05.2015
Сообщений: 20

Сообщение от ksa
Так вот понятно будет?
Благодарю, всё получилось как нужно
Но теперь возник еще один вопрос, я когда меняю текст внутри href, то сразу всё ломается. Есть какой то способ изменить текст на нужный?
Ответить с цитированием
  #15 (permalink)  
Старый 14.05.2015, 19:21
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Rise
switch ($_GET['info']) {
case 1:
$_SESSION['info'] = 1;
echo 'Текст 1';
В данном случае switch не нужен.
Ответить с цитированием
  #16 (permalink)  
Старый 14.05.2015, 20:05
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

НУ смотрите сами - значение переданного это номер, и он же определяет сообщение, ну так выгоднее сразу

$_SESSION['info'] = $_GET['info'];
и
echo $message[$_GET['info']];
Ответить с цитированием
  #17 (permalink)  
Старый 14.05.2015, 21:07
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Ну так в этом случае ваш пример явно неудачный, ибо зачем же switch, если case 1 при $_SESSION['info'] = 1? Кроме того, если значения произвольные, то каким образом выкрутиться и в switch, ведь и для нее это будет проблемой.
Ответить с цитированием
  #18 (permalink)  
Старый 15.05.2015, 05:46
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Ну так извините, и кличи массива могут иметь имена произвольные. Суть не в этом. Что в вашем примере? А в нем явно ожидаемые значения, которые и проверяются, то есть 1, 2, 3. Вопрос встал о том, что если значения изменяться или дополняться (я правильно понял?), то case ну как волшебник, сам их подставить что-ли? Понятно что нет, и что их придется писать ручками, ну и какая разница, если я добавлю в массив ключи новые?
Что switch, что ключи в массиве, это приемлемо только для ожидаемых фиксированных значений. Удобство чего-то там разместить, это уже прострация, мы говорим о простом, что было показано, и для него switch, это лишнее. Что касается default, то в случае использования массива, потребуется проверка - если есть ключ, исполняем, иначе по умолчанию.
Ответить с цитированием
  #19 (permalink)  
Старый 15.05.2015, 08:56
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от Sn9
когда меняю текст внутри href, то сразу всё ломается. Есть какой то способ изменить текст на нужный?
Тут опять не понятно, что ты делаешь и, что ломается...
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Звук при нажатии на ссылку Dave Элементы интерфейса 45 15.02.2016 23:32
при нажатии на ссылку появляется блок MBmusic Элементы интерфейса 3 27.06.2013 17:54
При клике на ссылку ничего не происходит gurg0n Элементы интерфейса 2 24.06.2013 11:11
Вставка текста в форму при нажатии на ссылку Sergei1988 Общие вопросы Javascript 2 03.04.2011 22:05
Событие при нажатии на ССЫЛКУ Ivanishin Events/DOM/Window 11 16.06.2009 01:43