Хеш URL с тегом BASE HTML

Я делаю что-то подобное, каждый раз gRibbon.Invalidate

#If VBA7 Then
    Declare PtrSafe Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _
        ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)
#Else
    Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _
        ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)
#End If

Public gRibbon As IRibbonUI

#If VBA7 Then
Function GetRibbon(ByVal lRibbonPointer As LongPtr) As Object
#Else
Function GetRibbon(ByVal lRibbonPointer As Long) As Object
#End If

    Dim objRibbon As Object
    Call CopyMemory(objRibbon, lRibbonPointer, LenB(lRibbonPointer))
    Set GetRibbon = objRibbon
    Set objRibbon = Nothing
End Function

Public Sub OnRibbonLoad(ribbon As IRibbonUI)
    Set gRibbon = ribbon
    'SAVE SETTINGS TO REGISTRY
    SaveSetting "POP", "RIBBON", "ribbonPointer", ObjPtr(gRibbon)
End Sub

Public Sub OnActionButton(control As IRibbonControl)
        If gRibbon Is Nothing Then
            Set gRibbon = GetRibbon(GetSetting("POP", "RIBBON", "ribbonPointer"))
        End If
    On Error Resume Next
        gRibbon.Invalidate
    On Error GoTo 0
End Sub
9
задан Joel Coehoorn 18 March 2009 в 16:52
поделиться

4 ответа

Любой удаляет Ваш base отметьте или измените Ваш href атрибуты, которые будут полностью определены. То, что Вы наблюдаете, является намеченным поведением, когда Вы смешиваетесь base с a элементы.

9
ответ дан 4 December 2019 в 19:36
поделиться

Если Вы склонны использовать тег, другое решение не состоит в том, чтобы использовать # в качестве цели href (когда Вы не указываете тот, это вызывает переход к верхней части страницы, которую я нахожу нежелательным). То, что можно сделать:

<a href="javascript:">Some Link that Goes nowhere</a>

Действительно, хотя, если Вы не делаете что-то, что требует, чтобы, чтобы быть тегом промежуток был бы Вашим лучшим выбором:

CSS:

.generic_link {
  text-decoration:underline;
}
.generic_link:hover {
  text-decoration:none;
}

HTML:

<span class="generic_link">Something that really isn't a link</span>
3
ответ дан 4 December 2019 в 19:36
поделиться

Если нет никакого URL, который подходит для пользователя не-JavaScript, то не используйте <a>. <a> теги для ссылок на другие страницы.

Любой видимый элемент HTML может иметь onclick и не будет иметь этой проблемы, которую Вы описываете.

1
ответ дан 4 December 2019 в 19:36
поделиться

Вернуть false на onclick событие для отключения ссылки:

<a href="#" onclick="doSomething(); return false">Link Text</a>

(Это - просто пример того, как Вы сделали бы это встроенный. Но старайтесь избегать встроенных объявлений и используйте методы прогрессивных улучшений.)

0
ответ дан 4 December 2019 в 19:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: