Как убрать решетку # в адресной строке?

12
Samail
На сайте с 10.05.2007
Offline
330
6049

Скрипт:


<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="/jpm/jquery.panelslider.min.js"></script>
<script>
$('#left-panel-link').panelslider();
$('#right-panel-link').panelslider({side: 'right', clickClose: false, duration: 200 });

$('#close-panel-bt').click(function() {
$.panelslider.close();
});
</script>

jquery.panelslider.min.js


!function(e){"use strict";function i(e,i){var a=e.outerWidth(!0),s={},l={};if(!e.is(":visible")&&!n){switch(n=!0,e.addClass("ps-active-panel").css({position:"fixed",top:0,height:"100%","z-index":999999}),e.data(i),i.side){case"left":e.css({left:"-"+a+"px",right:"auto"}),s["margin-left"]="+="+a,l.left="+="+a;break;case"right":e.css({left:"auto",right:"-"+a+"px"}),s["margin-left"]="-="+a,l.right="+="+a}t.animate(s,i.duration),e.show().animate(l,i.duration,function(){n=!1,"function"==typeof i.onOpen&&i.onOpen()})}}var t=e("body"),n=!1;e.panelslider=function(t,n){var a=e(".ps-active-panel"),s={side:"left",duration:200,clickClose:!0,onOpen:null};n=e.extend({},s,n),a.is(":visible")&&a[0]!=t[0]?e.panelslider.close(function(){i(t,n)}):(!a.length||a.is(":hidden"))&&i(t,n)},e.panelslider.close=function(i){var a=e(".ps-active-panel"),s=a.data("duration"),l=a.outerWidth(!0),o={},c={};if(a.length&&!a.is(":hidden")&&!n){switch(n=!0,a.data("side")){case"left":o["margin-left"]="-="+l,c.left="-="+l;break;case"right":o["margin-left"]="+="+l,c.right="-="+l}a.animate(c,s),t.animate(o,s,function(){a.hide(),a.removeClass("ps-active-panel"),n=!1,i&&i()})}},e(document).bind("click keyup",function(i){var t=e(".ps-active-panel");("keyup"!=i.type||27==i.keyCode)&&t.is(":visible")&&t.data("clickClose")&&e.panelslider.close()}),e(document).on("click",".ps-active-panel",function(e){e.stopPropagation()}),e.fn.panelslider=function(i){return this.click(function(t){var n=e(".ps-active-panel"),a=e(this.getAttribute("href"));n.is(":visible")&&a[0]==n[0]?e.panelslider.close():e.panelslider(a,i),t.preventDefault(),t.stopPropagation()}),this}}(jQuery);

Ссылки:

<a id="left-panel-link" title="Показать левую панель"  href="#left-panel"><img src="/jpm/8.png"></a>

Решетка и то что после неё, не появляется.

<a id="close-panel-bt" title="Скрыть эту панель" href="#close-panel-b"><img src="/jpm/7.png"></a>

На конце URL появляется "#close-panel-b". Как сделать что-бы не появлялось?

И есть вообще универсальный способ, что-бы не давать появляться в строке решеткам?

Artisan
На сайте с 04.03.2005
Offline
311
#1
Samail:
И есть вообще универсальный способ,
что-бы не давать появляться в строке решеткам?

http://www.w3.org/MarkUp/Wilbur/

http://www.w3.org/TR/REC-html32.html

Не пользоваться новыми

модными технологиями.

-
ДП
На сайте с 23.11.2009
Offline
190
#2

А если заменить тег a на какой-нибудь span, то перестает работать?

Samail
На сайте с 10.05.2007
Offline
330
#3

Не перестаёт. И если href убрать не перестаёт. Но тогда в обоих случаях браузер перестаёт понимать что это ссылка. Стили которые для ссылки, не применяются и курсор при наведении не меняется.

ДП
На сайте с 23.11.2009
Offline
190
#4

Замена тега это в приницпе костыль, а вообще вот так попробуйте в jquery.panelslider.min.js:

n.is(":visible") && a[0] == n[0] ? e.panelslider.close() : e.panelslider(a, i), t.preventDefault(), t.stopPropagation()

заменить на

n.is(":visible") && a[0] == n[0] ? e.panelslider.close() : e.panelslider(a, i); t.preventDefault(); t.stopPropagation()

это к концу ближе, запятые на ; заменены

Samail
На сайте с 10.05.2007
Offline
330
#5

Не помогло

totamon
На сайте с 12.05.2007
Offline
350
#6
Samail:
Не перестаёт. И если href убрать не перестаёт. Но тогда в обоих случаях браузер перестаёт понимать что это ссылка. Стили которые для ссылки, не применяются и курсор при наведении не меняется.

надо браузеру намекнуть чтобы показывал как ссылку через стили...

еще вариант вместо якоря использовать в ссылке href="javascript:void(0)"

Хостинг от 90р ( https://goo.gl/h1VRkY ) и ВПС от 161р ( https://goo.gl/vw9JH7 ) 14 дней бесплатный тест! Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno а тут ВПС за 1,25$ https://8fn.ru/vps1doll Монетизация любых сайтов PUSHами ( https://8fn.ru/push ) - лучшая цена клика и показа ;)
siv1987
На сайте с 02.04.2009
Offline
427
#7
Samail:
На конце URL появляется "#close-panel-b"

А чем он вам мешает?

---------- Добавлено 29.01.2015 в 18:34 ----------

$('#close-panel-bt').click(function(e) {

e.preventDefault();

$.panelslider.close();

});

Samail
На сайте с 10.05.2007
Offline
330
#8

Посетители потом ссылки копируют вместе с решеткой.

---------- Добавлено 30.01.2015 в 00:44 ----------

siv1987:
$.panelslider.close();
return false;

Спасибо. Перестала появляться :)

---------- Добавлено 30.01.2015 в 00:52 ----------

totamon:

еще вариант вместо якоря использовать в ссылке href="javascript:void(0)"

И так тоже работает :)

SeVlad
На сайте с 03.11.2008
Offline
1410
#9
Samail:
Посетители потом ссылки копируют вместе с решеткой.

И что?

Решётка.. за решётку бы, да на якорь таких...

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Топики помощи с ⓌordPress (https://searchengines.guru/ru/forum/1032910 ) и основы безопасности сайтов ( https://searchengines.guru/ru/forum/774117 ). *** Помощь\консультации в топиках форума - БЕСПЛАТНО. Платные услуги ( https://wp.me/P3YHjQ-3 ) - с бюджетом от 150$ ***
Samail
На сайте с 10.05.2007
Offline
330
#10
SeVlad:
Решётка.. за решётку бы, да на якорь таких...

По ссылке решетку тоже решеткой называют.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий